ArcGIS Charts 是用于将 ArcGIS 图层数据渲染为交互式图表的技能,基于 @arcgis/charts-components 包实现。该组件包为 5.0 版本新增,4.x 版本中没有对应实现。
主要能力方面,支持多种图表类型:柱状图(BarChartModel)、折线图(LineChartModel)、饼图(PieChartModel)、直方图(HistogramModel)、散点图(ScatterplotModel)、箱线图(BoxPlotModel)、仪表盘(GaugeModel)、雷达图(RadarChartModel)、热力图(HeatChartModel)以及柱线组合图(ComboBarLineChartModel)。
使用方式上,可通过 CDN 加载(无需构建工具),引入 https://js.arcgis.com/5.0/ 与 https://js.arcgis.com/5.0/charts-components/;也可通过 ESM 直接导入 @arcgis/charts-components/components/arcgis-chart 等组件,并从 @arcgis/charts-components/model 导入图表模型类。图表配置可通过图表模型以编程方式设置,也可使用 WebChart JSON 规范。
核心组件 arcgis-chart 提供的主要属性包括:model、layer、view、layerItemId、chartIndex、actionMode;显示相关属性如 disableInteractions、enableConfiguration、enableResponsiveFeatures、useAnimatedCharts 等;数据与筛选相关属性如 filterByExtent、filterBySelection、syncSelection、runtimeDataFilters、selectionData、nullAsValid、timeZone 等;以及 dataLabelFormatter、tooltipFormatter、xAxisLabelFormatter 等格式化回调。组件方法包括 loadModel、refresh、resetZoom、clearSelection、switchSelection、exportAsImage、exportAsCSV 等,并会触发 arcgisSelectionChange、arcgisDataFetchComplete 等事件。
arcgis-charts-action-bar 组件提供图表交互工具栏(导出、选择、筛选、缩放),需通过 chartElement 属性与图表关联。
适用场景包括在 ArcGIS 地图应用中将图层数据可视化为各类图表,并与地图选择、范围联动。常见的注意事项包括:必须设置 layer 属性作为数据源;必须显式加载 charts-components 包;model 为复杂对象,须通过 JavaScript 设置而非 HTML 属性;使用 filterByExtent 时需设置 view;动作栏需连接到图表元素。