「实战应用」如何用图表控件LightningChart JS创建树状图应用?

LightningChart JS是Web上性能特高的图表库,具有出色的执行性能 - 使用高数据速率同时监控数十个数据源。 GPU加速和WebGL渲染确保您的设备的图形处理器得到有效利用,从而实现高刷新率和流畅的动画,常用于贸易,工程,航空航天,医药和其他领域的应用。

在今天的文章中,我们将为大家介绍如何用LightningChart JS创建用于分类数据可视化的树状图应用程序。

立即申请LightningChart JS v5.2下载

JS树状图

今天我们将使用LightningChart JS创建一个JS树状图,这个示例非常快速和简单,并且LightningChart JS将方便地处理繁重的编码工作,因此我们只关注如何将数据分配给图表。在这个示例中,我们将使用Node JS和LightningChart JS v5.2,建议您不要跳过LightningChart JS安装部分。

您可以获得免费的LC JS授权许可,如有任何问题可来电详询:023-68661681,在开始编写代码之前,有必要了解一下JS树状图背后的一些理论。

树状图图

树状图是一种可视化形式,其中结构通过嵌套矩形分层表示。识别数据模式很有用,因为根据数据量,树的分支在大小上用矩形表示。

这个想法源于计算机科学家本·施奈德曼,他试图创造一种方法来查看他电脑上庞大的文件目录,而不会占用屏幕上太多的空间。这有助于改善空间,使其更容易阅读和理解。

什么时候使用树状图?

在Ben的例子中,当我们有大量的数据需要显示和组织时,可以考虑使用这个图表,它的分支和子分支使我们更容易比较和分类模式。在这个图表中,我们可以有层,这些层对数据类别进行子分类,允许在不停止相关的情况下显示n个级别的信息。

树状图特征

树状图的一个方面是颜色主题以及这些颜色如何与所表示的数据直接相关,换句话说,我们可以从非常浅的颜色作为第一层次开始,然后下降到较深的颜色,让观众专注于较浅的颜色。第二个特征是矩形(又名分支或节点),矩形越大,表示的数据量就越大。

此外,还可以对节点进行子类分类,将其命名为“叶子”。这些节点的排列方式从图表的左上角移动到右下角:

图表控件LightningChart JS使用教程

作为最后一个也是第三个特征,我们有层次结构,从而表示可以在图表中找到的层。在用辅助数据对主要数据进行分类、嵌套矩形以形成分层级别、在图上形成组和子组时,可以表示层。

树状图通常用于表示有限空间内的大量离群数据,显示包含类别、颜色和大小的趋势和子组,从而更容易识别模式。

这张图表对客户投资组合分析很有用,例如,查看地理区域的市场细分或财务分析,有助于显示不同的股票品牌、汇率等。

项目概述

下面的JavaScript树状图是最近在LightningChart JS v.5.2中引入的,它是一个交互式树状图,具有不同的UI功能,使它看起来像一个更健壮的独立树状图应用程序,而不仅仅是另一个树状图。

图表控件LightningChart JS使用教程

请戳这里直接获取JS树状图模板>>

模板设置

1. 下载提供的模板来学习本教程。

2. 下载模板后,您会看到如下的文件树:

图表控件LightningChart JS使用教程

3. 打开一个新终端,运行npm install命令。

CHART.ts

目前最新的版本是LightningChart JS 5.2.0和XYData 1.4.0,我们建议您查看最新版本并进行更新,这是因为一些LightningChart JS工具在以前的版本中不存在。在项目的packag.json文件中,您可以找到LightningChart JS依赖项:

"dependencies": {
"@arction/lcjs": "^5.1.0",
"@arction/xydata": "^1.4.0",
"webgl-obj-loader": "^2.0.8",
}
1. 导入库

我们将从导入创建图表所需的库开始。

// Import LightningChartJS
const lcjs = require('@arction/lcjs')
const { lightningChart, BarChartSorting, LegendBoxBuilders, Themes } = lcjs
2. 添加授权许可密钥(免费)

安装LightningChart JS库之后,我们将把它们导入到chart.ts文件中。注意,您将需要试用许可证,这是免费的。然后将其添加到一个变量中,该变量将用于创建JavaScript 2D Bubble Chart对象。

let license = undefined
try {
license = 'xxxxxxxxxxxxx'
} catch (e) {}
3. 属性
}).TreeMapChart({
theme: Themes.turquoiseHexagon,
})
  • TreeMapChart:用于可视化树状图的chart类。
  • Theme:定义JS树状图的外观和感觉,注意您必须事先指定图标组件的颜色主题。
  • setTitle:将名称设置在图表顶部。

图表控件LightningChart JS使用教程

创建数据集

treemap使用setData方法,该方法需要一个包含TreeMapUserNodes的数组,这些节点包含值name和值data。

treeMap.setData([
{ name: 'Category 1', value: 10},
{ name: 'Category 2', value: 12},
{ name: 'Category 3', children: [
{ name: 'Category 3.1', value: 6},
{ name: 'Category 3.2', value: 12},
]},
])

这些节点可以有更多的嵌套节点,从而生成更复杂的树图。在图表的代码中,我们可以找到嵌套数组:

{
name: 'TECHNOLOGY',
children: [
{ name: 'MSFT', value: 60.34 },
{ name: 'AAPL', value: 52.75 },
{ name: 'ORCL', value: 31.25 },
{ name: 'ADBE', value: 81.71 },
{ name: 'NVDA', value: 252.82 },
{ name: 'AVGO', value: 104.86 },
{ name: 'CRM', value: 104.83 },
{ name: 'INTU', value: 66.01 },
],
},
{
name: 'COMMUNICATION SERVICES',
children: [
{ name: 'GOOG', value: 63.0 },
{ name: 'META', value: 206.14 },
{ name: 'NFLX', value: 75.84 },
{ name: 'DIS', value: 7.27 },
],
},

基本上,您需要一个源,该源以本例中使用的格式提供JSON对象,并且在setData方法的帮助下,将创建图表中的层次结构。

图表控件LightningChart JS使用教程

结论

最后,要运行这个图表,只需要打开一个新的终端并运行NPM START命令,您就可以在本地服务器(通常是HTTP://localhost:8080/)上可视化JS树状图应用程序了!

尽管树状图看起来过于简单而难以创建,但它并没有降低其对分析分层数据的重要性。这种类型的图表使我们能够识别按类别分组的一组数据中两个或多个元素的关系和模式。

LightningChart JS帮助我们完成最困难的工作的地方,因为只需要提供每个层/类别的数值,这样它就可以立即生成地图。显然,我们必须非常小心处理节点的结构,因为有错误的结构可能会阻止映射的生成。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/3249107.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

Go语言并发编程-同步和锁

同步和锁 概述 同步是并发编程的基本要素之一,我们通过channel可以完成多个goroutine间数据和信号的同步。 除了channel外,我们还可以使用go的官方同步包sync,sync/atomic 完成一些基础的同步功能。主要包含同步数据、锁、原子操作等。 一…

P3-AI产品经理-九五小庞

AI产品的数据流向 美团外卖,实时只能调度 美团28分钟送达需求的分析 AI产品常用的算法 常用算法 常见的AI算法解析 自然语言生成NLG语音识别:科大讯飞,通义千问 虚拟现实机器学习平台 决策管理系统生物特征识别技术 RPA(机器人流程自动…

ICE-BA原理

文章目录 主要思想约束建立IMU&Local & globalBAIMU预积分LocalBAGlobalBA求解方法常用的求解思路改进增量BA方法 论文: 《ICE-BA: Incremental, Consistent and Efficient Bundle Adjustment for Visual-Inertial SLAM》 ICE-BA:增量、一致且高…

多商户SaaS版扫码点餐系统开源

基于前后端分离的 多商户 SaaS 版扫码点餐系统,支持后台点餐、多人同时在线点餐、购物车共享、餐桌状态实时监控,菜品管理、餐桌管理等众多功能。 源码下载:多商户 SaaS 版扫码点餐系统.zip 功能特色 手机扫码点餐功能:用户可…

如何评价2023年国际高校数学建模竞赛B题?

问题1:在三星堆发现的一个外圆直径为85厘米,内圆直径为40厘米(假设)的青铜车轮,青铜车轮有5条车轴(射线),5条内弧线本质是双曲线,顶点与内圆相切,内弧双曲线的…

植物病害分级调研

Web of Science搜索,关键字“plant disease severity recognition”,共407篇,限制2023年以后共71篇 2019、2020 《Disentangled Representation Learning for Leaf Diseases Recognition》 2019 IF:0.8 论文:Disen…

Xcode进行真机测试时总是断连,如何解决?

嗨。大家好,我是兰若姐姐。最近我在用真机进行app自动化测试的时候,经常会遇到xcode和手机断连,每次断连之后需要重新连接,每次断开都会出现以下截图的报错 当这种情况出现时,之前执行的用例就相当于白执行了&#xff…

爬虫瑞数5案例:某大学总医院

声明: 该文章为学习使用,严禁用于商业用途和非法用途,违者后果自负,由此产生的一切后果均与作者无关 一、瑞数简介 瑞数动态安全 Botgate(机器人防火墙)以“动态安全”技术为核心,通过动态封装、动态验证、动态混淆、动态令牌等技术对服务器网页底层代码持续动态变换,…

Go语言并发编程-Goroutine调度

goroutine 概念 在Go中,每个并发执行的单元称为goroutine。通常称为Go协程。 go 关键字启动goroutine go中使用关键字 go 即可启动新的goroutine。 示例代码: 两个函数分别输出奇数和偶数。采用常规调用顺序执行,和采用go并发调用&…

大模型学习笔记十一:视觉大模型

一、判别式模型和生成式模型 1)判别式模型Discriminative ①给某一个样本,判断属于某个类别的概率,擅长分类任务,计算量少。(学习策略函数Y f(X)或者条件概率P(YIX)) ②不能反映训练数据本身的特性 ③学习…

优思学院|直方图与条形图的具体区别

在六西格玛方法、质量管理工具中,数据的分析和可视化是关键步骤。直方图和条形图是两种常用的图表工具,但它们在用途和显示方式上有显著区别。本文将详细探讨这两种图表的定义、特性、应用及如何选择适合的图表。 1. 直方图和条形图的定义 直方图是一种…

人工智能未来发展前景将会怎样?

当我们探讨人工智能未来的发展前景时,可以从多个角度来详细说明其可能的影响和趋势: 技术进步与应用扩展 1.深度学习与机器学习: 进一步优化和算法进展:深度学习已经取得了巨大成就,但仍面临挑战,如对小数…

程序员想要6万一个月,需要什么能力,要吃什么样的苦?

让我们来算一道小学数学题:6w*1272w,年包72w的程序员起码是阿里P7-P8的水平了,论工作职责来说,起码得是大厂的一个小tech leader,如果是在小公司,基本上是公司骨干级成员,或是统筹整个项目和小组…

FFmpeg播放视频

VS2017+FFmpeg6.2.r113110+SDL2.30.5 1.下载 ShiftMediaProject/FFmpeg 2.下载SDL2 3.新建VC++控制台应用 3.配置include和lib 4.把FFmpeg和SDL的dll 复制到工程Debug目录下,并设置调试命令

如何让您的反爬虫策略更具弹性?揭秘管理技巧

摘要: 本文深入探讨了反爬虫策略的最新趋势与实战技巧,旨在帮助网站所有者和数据分析师构建更加灵活高效的爬虫管理系统。通过理解反爬机制、动态应对策略及合法数据采集的最佳实践,确保数据收集在遵守网络规则的同时,实现业务目…

Kettle 登录示例 POST请求

登录接口是post请求,组装Body为json字符串 var body "{\"username\":\""username"\",\"password\": \""password"\",\"code\":\""verification"\",\"uuid\…

YOLOv7网络结构学习

YOLOV7详细解读(一)网络架构解读 YOLOV7学习记录之原理代码介绍 【Make YOLO Great Again】YOLOv1-v7全系列大解析(Backbone篇) yolov7 图解 深入浅出 Yolo 系列之 Yolov7 基础网络结构详解 我觉得Head、Neck和Head的划分不太…

FedAvg的简单实现(详解)

对于联邦学习正在学习中,下文中若有错误出现,望指正 介绍 本文在简单实现联邦平均算法时,使用客户-服务器架构,其基本流程是: 1、server初始化模型参数,所有clients将这个初始模型下载到本地 2、clien…

每个人都有良知,只是被遮蔽的程度不同

85天 【困之勉行,下笨功夫】 每个人的良知余光都在,困之勉行努力用余光去精细明察,须下“人一己百,人十己千”的努力; 生活中,我们往往会看到,绝顶聪明的人往往愿意下笨功夫,而资质…

linux开机后不用登陆,无法正常进入系统,出现:/#的提示符

linux开机后不用登陆,无法正常进入系统,出现:/#的提示符 解决方案: 1、输入命令 ls /dev/mapper 此时会出现3个文件。其中rhel-root文件 是我们下面所要用的文件。 ls的目的就是为了让大家能知道自己带"-root" 文件的前缀是什…