news 2026/4/15 16:10:01

Dashboards 集成 Highcharts 图标组件及数据连接使用说明

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Dashboards 集成 Highcharts 图标组件及数据连接使用说明

Highcharts 图表组件

HighchartsComponent( Highcharts 组件)允许最终用户在仪表盘中定义图表。 图表通常用于可视化变化的数据。

如何开启

我们需要按照以下顺序加载 JavaScript 和 CSS 文件以开始使用。

1.导入

要使用 Highcharts 组件,首先像往常一样加载 Highcharts ,然后加载 Dashboards 以将它们绑定在一起。

导入的顺序非常重要,因此请确保在导入 Highcharts 模块之后再导入 Dashboards 模块。

<scriptsrc="https://code.highcharts.com/highcharts.js"></script><scriptsrc="https://code.highcharts.com/dashboards/dashboards.js"></script><scriptsrc="https://code.highcharts.com/dashboards/modules/layout.js"></script>

你也可以使用 NPM 包。

npminstallhighcharts

然后,导入包和专用插件以将其连接到仪表盘。

import*asHighchartsfrom'highcharts';import*asDashboardsfrom'@highcharts/dashboards';importLayoutModulefrom'@highcharts/dashboards/modules/layout';LayoutModule(Dashboards);Dashboards.HighchartsPlugin.custom.connectHighcharts(Highcharts);Dashboards.PluginHandler.addPlugin(Dashboards.HighchartsPlugin);

2. CSS

从版本 v3.0.0 开始,Highcharts 组件默认不使用 styledMode ,因此无需加载一整套 CSS 样式来正确显示 Highcharts。只导入 Dashboards 的 CSS 文件就足够了:

@importurl("https://code.highcharts.com/dashboards/css/dashboards.css");

您可以随时通过将styledMode选项设置为true来启用样式模式,并根据 Highcharts s样式指南 进行样式设置。

3.单元格标识符

在加载必要的文件后,使用唯一标识符定义一个单元格,例如renderTo: 'dashboard-col-0'.

您可以在仪表盘的 这里 找到有关创建布局的更多信息。

4. 图表选项

chartOptions对象中声明所有图表选项。 有关可用选项的完整列表,请参阅 Highcharts API

chartOptions:{series:[{data:[1,2,3,4]}]}

5. 图表类型

您只需在组件的配置中指定type: 'Highcharts'即可。

下面是完整示例。

Dashboards.board('container',{gui:{layouts:[{id:'layout-1',rows:[{cells:[{id:'dashboard-col-0'}]}]}]},components:[{renderTo:'dashboard-col-0',type:'Highcharts',chartOptions:{series:[{data:[1,2,3,4]}]}}]});

处理数据

您可以定义静态数据,就像在基本的Highcharts图表中一样,或者使用 dataPool 连接一些动态数据。
示例.

如果数据连接器已连接,您可以加载 Highcharts 的dragDrop模块,允许用户更改数值并将这些更改与其他组件同步。此外,如果系列数据基于连接器中的列(由mathModifier创建),默认情况下编辑功能是禁用的。您可以在dataPool部分了解更多相关信息。

使用 数据连接器DataConnector的示例。

Dashboards.board('container',{dataPool:{connectors:[{id:'Vitamin',type:'CSV',options:{csv:`Food,Vitamin A,Iron Beef Liver,6421,6.5 Lamb Liver,2122,6.5 Cod Liver Oil,1350,0.9 Mackerel,388,1 Tuna,214,0.6`,},}]},gui:{layouts:[{id:'layout-1',rows:[{cells:[{id:'dashboard-col-0'}]}]}]},components:[{renderTo:'dashboard-col-0',type:'Highcharts',connector:{id:'Vitamin'},chartOptions:{title:{text:'Example chart'}}}]});

将列数据分配给系列数据

可以通过 columnAssignment 选项解析数据,将连接器中的正确值映射出来,以在系列中反映。你还可以声明哪些列将作为点的参数。这对于像OHLC、蜡烛图、列范围或排列等系列非常有用。seriesId字段是正确显示系列(例如在图例中)的必需项。 以下是示例Here。

data选项可以接受三种不同的类型:

1.string一维

包含一维数据的列名。

columnAssignment:[{seriesId:'mySeriesId',data:'myData'}]

2.string[ ]二维

Names of the columns that data will be used in the two-dimensional format.

columnAssignment:[{seriesId:'mySeriesId',data:['myX','myY']}]

3.Record<string, string>

具有系列数据键名的键和将用于键定义的二维系列数据的列名的对象。

columnAssignment:[{seriesId:'myStockSeriesId',data:{x:'myX',open:'myOpen',high:'myHigh',low:'myLow',close:'myClose'},},{seriesId:'myColumnSeriesId',data:{name:'myNamesColumn',y:'myYColumn','dataLabels.style.visibility':'myDataLabelVisibilityColumn'}}]

多个连接器

The Highcharts Component also supports more than one data source. Therefore, the connector option must be configured as an array of objects rather than a single object.

Code sample:

components:[{type:'Highcharts',connector:[{id:'connector-1',columnAssignment:[...]},{id:'connector-2',columnAssignment:[...]}]}]

组件同步

其中一个Highcharts组件的众多可用选项之一是sync同步选项,它允许设置组件状态之间的同步。你可以在sync 同步文章中找到更多相关信息

同步可以是一个配置对象,包含:highlight,visibility,extremes,它们允许通过传递值truefalse来启用或禁用同步类型。

以下是sync同步类型的演示:See demos of types below:

  • Extremes Sync 极限同步
  • Highlight Sync 高亮同步
  • Visibility Sync 可见性同步

高亮同步选项

同步高亮可以有额外的选项:

sync:{highlight:{enabled:true,affectedSeriesId:'series-1',highlightPoint:true,showTooltip:false,showCrosshair:true}}

如果你想强制突出显示同步始终影响某个特定系列,可以在参数中使用affectedSeriesId选项,并指定该系列的ID。当未定义、为空或设置为null时,选项的分配将默认基于悬停的列和列的分配。

如果你想确定图表上重点显示的方式(即是否应为标记设置悬停状态,是否应同步十字光标,以及是否应显示工具提示),请使用highlightPoint,showCrosshairshowTooltip选项。详细内容请参阅 API 文档 API docs。

API 选项

有关所有可用选项的完整列表,请参阅 API.

Highcharts 兼容性

Highcharts 组件与版本10及以上的所有Highcharts模块兼容。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/8 6:39:13

安卓 14 正式版发布后,Open-AutoGLM 适配方案已更新!速看升级要点

第一章&#xff1a;安卓 14 手机适配 Open-AutoGLM 的设置指南在安卓 14 系统上部署 Open-AutoGLM 模型需要对设备权限、开发环境和运行时配置进行针对性调整。由于该系统强化了应用沙盒机制与后台行为限制&#xff0c;直接运行本地大模型服务可能受阻&#xff0c;需手动开启相…

作者头像 李华
网站建设 2026/4/11 0:22:44

Open-AutoGLM免Root安装终极指南(仅限高级玩家的隐藏方案)

第一章&#xff1a;Open-AutoGLM免Root使用全景解析Open-AutoGLM 是一款基于轻量级自动化框架设计的智能辅助工具&#xff0c;专为无需 Root 权限的 Android 设备优化。它利用无障碍服务与 Intent 机制实现应用间协同控制&#xff0c;可在不破坏系统安全策略的前提下完成任务自…

作者头像 李华
网站建设 2026/4/6 13:13:41

YOLOv9性能优化与部署实战:从瓶颈诊断到效率跃迁

YOLOv9性能优化与部署实战&#xff1a;从瓶颈诊断到效率跃迁 【免费下载链接】yolov9 项目地址: https://gitcode.com/GitHub_Trending/yo/yolov9 在工业质检、自动驾驶等实时性要求极高的场景中&#xff0c;YOLOv9作为当前最先进的目标检测模型&#xff0c;其原生PyTo…

作者头像 李华
网站建设 2026/4/15 9:14:12

【远程控制新纪元】:基于Open-AutoGLM的WiFi手机操控系统搭建全过程

第一章&#xff1a;远程控制新纪元的开启随着云计算、物联网和5G网络的普及&#xff0c;远程控制技术正迎来前所未有的发展契机。设备间的无缝连接与实时交互已成为现代IT基础设施的核心需求。无论是远程办公、工业自动化&#xff0c;还是智能家居管理&#xff0c;高效的远程控…

作者头像 李华
网站建设 2026/4/14 14:47:46

Dracula主题终极指南:30分钟打造专属深色编程环境

Dracula主题终极指南&#xff1a;30分钟打造专属深色编程环境 【免费下载链接】dracula-theme &#x1f9db;&#x1f3fb;‍♂️ One theme. All platforms. 项目地址: https://gitcode.com/gh_mirrors/dr/dracula-theme 你是否厌倦了刺眼的白色编程界面&#xff1f;Dr…

作者头像 李华