数据可视化图表库LightningChart JS v8.0上线:全新图例系统 + 数据集重构

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

LightningChart JS v.8.0 已正式发布了!新版本拥有一些全新的产品特性、可视化质量、性能,同时进一步提升了开发体验等!欢迎立即申请最新版体验!

立即申请LightningChart JS v8.0新版下载

全新的产品特性

LightningChart JS v8.0引入了新的产品特性。以下是概述:

图例功能重构

在这个v8.0版本中,官方完全重建了图例的工作方式,主要关注以下几个方面:

  • 更好的图表外观:图例更不干扰数据展示,并能够更好地适配可用空间。
  • 配置更简便:图例设置更易上手,同时功能更强大。
  • 内置选项更多:无需额外开发即可使用更多图例样式。
  • 支持插件定制:可通过插件扩展图例功能,无需从零实现自定义功能。

新图例默认自动显示在趋势图下方,同时也支持手动创建多个图例。图例位置可以选择内置位置或自定义位置,也可配置点击行为(内置或自定义)。创建图例时,还支持排除具体的数据序列。

复制代码
// Set legend position to TopRight
chart.legend.setOptions({
position: LegendPosition.TopRight
});
// Set legend entry click behavior to focus clicked
chart.legend.setOptions({
entries: {
events: {
click: LegendEntryClickBehaviors.focusClicked
}
}
});
// Add a line series and hide it from the legend
const series = chart.addLineSeries({
legend: { show: false }
});
Point Stroke API

现在,PointLineAreaSeries、PolarPointSeries 与Point标记支持设置描边(border stroke),可通过 setPointStrokeStyle 方法配置或禁用描边效果。

轴标题定位

在 v8 中,轴标题定位得到了改进。此前标题总是居中显示在坐标轴上,而现在新增了 center-chart 定位选项,这个选项对于更好地对齐在特定边有填充的图表中的轴标题很有用。当图表仅包含一个 X 轴和一个 Y 轴时,该定位选项已作为默认设置。

视觉质量提升

LightningChart JS v8.0对光标点标记进行了调整,光标点标记的默认样式更改为透明圆形,从而改进了数据值的高亮显示方式。这里有两个示例:

改进小图表光标适配

针对小图表的用例,光标的适配能力得到增强。新版本添加了更多的内置逻辑,来防止由于可用空间很少导致光标内容不可见的情况。

DataSetXY 重构与性能提升

LightningChart JS v8.0 带来多项性能优化,其中最显著的提升,可通过新的 DataSetXY 功能来实现:

  • 共享时间戳可将图表内存消耗减少 2 倍。
  • 如果某些测量不需要完整的64位精度,单独的数据存储格式配置可以进一步减少内存消耗。
  • 数据映射可以大大加快显示通道的切换速度,提高内存效率。
Racing Dashboard 示例:DataSetXY 的实际应用案例

这个 Racing Dashboard 演示展示了 DataSetXY API 的实际优势,演示中多个通道(如轮胎温度、速度、加速度)共用一个时间戳数据集。

使用新的 DataSetXY API,只需创建一个数据集并将所有数据推入其中,随后通过数据映射将多个系列连接到同一个数据集。该方式消除数据重复,并显著减少数据输入处理时间。

多通道EEG测试用例 & 进一步的性能提升

在多通道 EEG 共用时间戳测试中,产品团队加载了比以前大8倍的数据集,达到了惊人的 80 亿个数据点,这是 Web 数据可视化领域一个重要的突破。

除了前面提到的改进,LightningChart JS v8.0还提供了额外的开箱即用的性能增强:

  • 实时流式线图系列的 CPU 使用率降低了约 63%。
  • 实时流式散点图系列的 CPU 使用率降低了约 245%。
开发体验改进

开发者现在可以分别高亮矩形、多边形、线段、文本等不同图形;此前这些同属同一个序列的图形只能一起高亮显示。

这是一个显著的改进,特别是由于不必将数字分成许多不同的序列而带来的性能优势,它使直方图用例更方便实现。同时还更新了在线直方图示例代码,来展示这个新功能。

LUT 格式化器

新增一个统一配置 LUT 单位格式化的方式,可灵活控制图例、光标中 LUT 值的格式(如小数位数、单位等)。

复制代码
new LUT({
steps: [
{ value: 0, color: ColorHEX('#000000') },
{ value: 100, color: ColorHEX('#ff0000') },
],
interpolate: true,
formatter: (value) => `${value.toFixed(1)} Hz`,
})
相关推荐
这儿有一堆花4 小时前
前端三件套真的落后了吗?揭开现代 Web 开发的底层逻辑
前端·javascript·css·html5
墨黎芜4 小时前
ArcGIS从入门到精通——地图符号、注记的初步使用
学习·arcgis·信息可视化
.Cnn4 小时前
JavaScript 前端基础笔记(网页交互核心)
前端·javascript·笔记·交互
醉酒的李白、4 小时前
Vue3 组件通信本质:Props 下发,Emits 回传
前端·javascript·vue.js
小芝麻咿呀6 小时前
vue--面试题第一部分
前端·javascript·vue.js
nibabaoo6 小时前
前端开发攻略---H5页面手机获取摄像头权限回显出画面并且同步到PC页面
javascript·websocket·实时音视频·实时同步·录制
早起傻一天~G6 小时前
vue2+element-UI表格封装
javascript·vue.js·ui
这儿有一堆花7 小时前
深入解析 Video.js:现代 Web 视频播放的工程实践
前端·javascript·音视频
烤麻辣烫7 小时前
JS基础
开发语言·前端·javascript·学习
猫猫不是喵喵.9 小时前
layui表单项次大数据量导入并提交
前端·javascript·layui