SciChart WPF v9.0 更新详解:矢量场图表、堆叠箱线图与 MVVM 轴同步来了

SciChart WPF v9.0 更新详解:矢量场图表、堆叠箱线图与 MVVM 轴同步来了 SciChart WPF 是一款面向金融、医疗、工程等场景的高性能 WPF 图表库基于自研 Visual Xccelerator 引擎与 DirectX 硬件加速可实时渲染海量数据点并内置 2D / 3D 图表、交互能力与 MVVM API结合 Avalonia XPF 还可跨平台运行于 Linux。在 v9.0 版本中官方在图表类型、MVVM 能力与性能上做了一次集中更新。下面按更新点逐一说明。一、v9.0 更新总览v9.0 相对 v8.x 的主要变化可以归纳为以下六点矢量场图表VectorFieldRenderableSeries新增在二维平面渲染箭头向量的能力用于风场、流体、电场等方向量可视化。堆叠箱线图StackedBoxPlotRenderableSeries支持在同一 X 位置并排渲染多个箱线图便于跨类别比较统计分布。MVVM 轴同步 API通过IAxisViewModel的RangeSyncGroupId跨多图表联动VisibleRange无需代码后置。延迟缩放新增ZoomExtentsWhenReady/ZoomExtentsWhenReadyAsync扩展方法。性能提升MVVM 轴 API 的初始化性能提升约 30%。新增示例包括定向天线辐射方向图 3D 示例、赛车遥测仪表盘示例、矢量场示例以及 MVVM 轴范围同步教程Tutorial 10b。二、核心新特性详解2.1 矢量场图表VectorFieldRenderableSeries矢量场系列可在二维平面上以箭头向量呈现方向量数据适用于风场、流体、电磁场等场景。数据输入支持Uniform规则网格与NonUniform散点两种数据系列并支持以极坐标方式输入。着色模式Color ModeSolid单一颜色、ByMagnitude按量级着色、ByDirection按方向着色三种。长度模式Length ModeDataUnits、MagnitudePixels、FixedPixels三种控制箭头长度的表达方式。交互能力支持命中测试Hit-Test、工具提示Tooltips并支持通过 MVVM 绑定数据。2.2 堆叠箱线图StackedBoxPlotRenderableSeries堆叠箱线图系列可在同一 X 位置并排渲染多个箱线图便于跨类别比较统计分布。要点使用StackedGroupId控制分组使用Spacing控制各组之间的间距支持 MVVM 绑定。2.3 MVVM 轴同步 API新增基于 ViewModel 的轴范围同步机制无需代码后置即可联动多个图表。通过IAxisViewModel的RangeSyncGroupId跨多图表联动VisibleRange适用于仪表盘、多图联动等需要在同一视图中保持坐标轴一致的场景。2.4 延迟缩放Zoom Extents When Ready新增用于延迟执行的缩放扩展方法可在数据与坐标轴准备就绪后再执行 Zoom ExtentsZoomExtentsWhenReadyZoomExtentsWhenReadyAsync该方法在异步加载数据、需要等待坐标轴就绪后再自动缩放的场景中较为实用。2.5 性能提升MVVM 轴 API 的初始化性能提升约30%在包含大量图表与轴的仪表盘场景下表现更明显。2.6 新增示例v9.0 新增及更新的官方示例包括Directional Antenna Radiation Pattern 3D Chart定向天线辐射方向图 3D 示例Racing Telemetry Dashboard Demo赛车遥测仪表盘示例Vector Field 示例矢量场图表示例Tutorial 10bMVVM 轴范围同步教程。以下为部分官方示例效果截图3D表面网格Surface Mesh3D期限极限Tenor Curves交易绘图注解工具FIFO十亿点折线图三、代码示例下面给出示意代码帮助理解 v9.0 中较常用的新 API。MVVM 轴范围同步在 ViewModel 中为多个轴指定相同的RangeSyncGroupId即可实现多图表坐标轴联动// ViewModel 中对多个轴使用同一分组 Id var axisA new NumericAxisViewModel { RangeSyncGroupId GroupA }; var axisB new NumericAxisViewModel { RangeSyncGroupId GroupA }; // 任一轴改变 VisibleRange 时同组的其他轴会同步联动四、小结SciChart WPF v9.0 在图表类型上补齐了矢量场与堆叠箱线图在 MVVM 使用体验上新增了轴范围同步与延迟缩放能力并对轴 API 初始化性能做了约 30% 的提升。对于已有 WPF / .NET 图表需求、特别是需要方向量可视化、统计分布对比或多图联动仪表盘的项目v9.0 值得关注。