SuperAPI AI 工具集

syncfusion-react-bullet-chart

数据与分析

查看项目

更新于 10-14 20:23

技能介绍

用途

该技能用于在 React 应用中实现和定制 Syncfusion 的 React Bullet Chart 组件。子弹图是一种紧凑的数据可视化组件,设计用途是将主要度量(实际值)与目标度量在定性范围内进行对比。

适用场景包括:展示带目标对比的绩效指标或 KPI;创建展示实际值与目标值对比的紧凑可视化;用定性范围(差/良/优)可视化目标达成进度;构建空间高效的仪表盘性能指示器;将功能度量(实际条)与对比度量(目标条)进行比较;实现水平或垂直子弹图;在紧凑布局中展示多个指标;创建可访问、支持键盘导航的图表可视化。

主要能力

组件由以下部分构成:值条(Feature Measure,主要数据/实际值)、对比条(Target Marker,目标或对比值)、定性范围(表示绩效水平的背景带,如差、满意、优)、定量刻度(显示数值刻度的轴)、标题/副标题(图表的描述性文本)。

能力涵盖:通过 valueField 和 targetField 进行数据绑定;值条配置(Rect、Dot 形状,valueBorder 边框,valueFill 填充色,valueHeight 高度,可从 dataSource 动态绑定颜色);对比条配置(Circle、Cross、Rect 目标形状,targetTypes、targetColor、targetWidth,可从 dataSource 绑定目标颜色);范围配置(BulletRangeCollectionDirective 与 BulletRangeDirective,用 end 设置边界,最小值作为范围起点,多范围、color 与 opacity 定制);标题与副标题(title、subtitle、titlePosition 支持 Left/Right/Top/Bottom,titleStyle 与 subtitleStyle 定制字体颜色、透明度、大小、字体族、粗细、样式);工具提示(默认隐藏,tooltip.enable 开启,需注入 BulletTooltip 模块,支持 template 自定义,使用 ${target} 与 ${value} 占位符,可定制 fill、border、textStyle);数据标签(dataLabel.enable 开启,labelStyle 定制字体与颜色透明度);坐标轴定制(MajorTickLines 与 MinorTickLines 的 width、height、color、useRangeColor,tickPosition 的 Inside/Outside,labelFormat 全局化格式如 n1、n2、p1、c1,enableGroupSeparator 千位分隔,${value} 自定义格式,labelPosition 的 Inside/Outside,opposedPosition,categoryField 分类标签,categoryLabelStyle 与 labelStyle,useRangeColor);图表尺寸(容器内联样式与 CSS,width 与 height 属性支持像素或百分比,默认高度 126px、宽度为窗口宽度);定制(orientation 的 Horizontal/Vertical,默认 Horizontal,enableRtl 从右到左,animation 的 duration 与 delay,theme 主题支持);无障碍(符合 ADA、Section 508、WCAG 2.2,WAI-ARIA 属性与模式如 img 角色、button 角色、aria-label、aria-pressed,支持 Tab、Shift+Tab、Ctrl+P 键盘交互,屏幕阅读器支持,RTL,颜色对比度,移动设备支持,可用 accessibility-checker 与 axe-core 测试)。

使用方式

需安装 @syncfusion/ej2-react-charts 包。从该包导入 BulletChartComponent、BulletRangeCollectionDirective、BulletRangeDirective、BulletTooltip 和 Inject。准备包含 value 与 target 字段的数据,配置 dataSource、valueField、targetField,设置 minimum、maximum、interval,通过 BulletRangeCollectionDirective 添加范围,按需配置标题副标题,启用并定制工具提示(需注入 BulletTooltip)。资料还给出了多个常见模式示例,包括多指标绩效仪表盘、从数据动态绑定颜色、自定义工具提示模板、使用百分比尺寸的响应式布局。实现清单包括:安装包、导入组件与指令、准备数据、配置数据源与字段、设置刻度、添加范围、配置标题、启用工具提示、用不同数据范围测试、验证键盘导航无障碍、测试响应式行为。

适用场景

常见用例包括:KPI 仪表盘(为每个指标设置不同目标,使用红/黄/绿范围表示绩效水平,添加分类标签,启用工具提示);销售业绩跟踪(将营收数据映射到 valueField,在 targetField 中设置季度/月度目标,配置未达标/达标/超标的范围,用数据标签显示精确值);进度指示(使用基于百分比的范围如 0-50%、50-75%、75-100%,定制品牌色,添加动画,将标题放左侧以节省空间);对比分析(使用垂直方向提高空间效率,统一刻度,分类标签,定制目标类型 Circle/Cross 以示区分);移动端仪表盘(使用百分比尺寸,增大触控目标,启用移动端优化工具提示,用无障碍工具测试)。

限制与注意事项

资料列出了边缘情况与故障排查:数据不显示时需核对 valueField 与 targetField 是否与数据源属性名匹配、dataSource 是否为含有效对象的数组、minimum/maximum 是否覆盖数据范围;范围不可见时需确认已导入范围指令、end 值为升序且在最小/最大范围内;工具提示不工作需注入 BulletTooltip、设置 tooltip.enable 为 true 并正确配置对象;标题副标题重叠时可调整 titlePosition 或增大尺寸或调整字体大小;坐标轴标签被截断时可增大宽高、改用更短格式(如用 n1 替代完整数字)或启用 enableGroupSeparator。该技能的收费、价格、授权与平台限制信息暂未提供。