3

我一直在使用 Winforms 和内置的 Charting 库以一种 hacky 的方式完成这项任务,但我正在为其开发的团队想要一个更具交互性的解决方案。我希望我能够堆叠几个图表,但由于图表代表数字时序图,它们需要共享相同的 x 轴。我将 LiveCharts 视为一种解决方案,但我不知道是否可以垂直堆叠多个 y 轴项目以​​实现我的最终目标。理想情况下,它看起来像这样:

在此处输入图像描述

将它们保持为一个图表非常重要,以便它们共享 x 轴,并且可以在同一图表时序内进行比较。

使用的数据来自生成的日志文件,不是实时收集的。我会手动偏移数据,但用户可以选择显示图形线的顺序,所以我必须遍历整个系列并在每次用户移动它时偏移它。

也许实时图表不是去这里的方式?它需要是某些东西的免费实现,或 SciCharts v2.2(但我找不到存档文档),因为这些是我目前可以访问的唯一资源。

4

1 回答 1

0

虽然您的问题与 SciChart 没有具体关系,但您已对其进行了标记,因此我有一个建议给您。

SciChart WPF 中有一个垂直堆叠的轴功能。这允许您将 YAxis Container 模板替换为您想要的任何内容。在此示例中,我们使用 UniformGrid。结果如下:

在此处输入图像描述

几条迹线在同一个图上,但在不同的垂直位置。每个轴彼此堆叠。它们共享相同的 XAxis,因此对缩放、平移、工具提示的响应就像它们是一个图表一样。

上面的源代码在示例网页上。所有的 scichart WPF 示例源代码都托管在 GitHub 上,因此如果您单击上面的内容,然后向下滚动到源代码并单击“在 Github 上查看”,您可以看到我们是如何实现这种类型的图表的。

向社区披露:我是 SciChart 项目的技术负责人

于 2017-12-29T10:17:29.647 回答