如何使用VB.NET绘制YAMAZUMI图表

时间:2013-12-27 17:54:10

标签: charts

我想在VB.net中绘制Yamazumi图表。这张Yamazumi图表是一个非常特殊的堆积柱形图,其中一系列的整个数据被绘制成一个高于其他数据 - 作为一系列框。这是唯一的区别。

但截至目前,这些图表都没有提供此功能。所有这些都在x轴上一个接一个地放置了一系列数据。我希望你能看到Yamazumi的东西,而不是常规的堆积柱形图!

我不想花时间从GDI或使用Paint等。我希望使用图表控件来完成此图表...因此,使用当前的“系列”数据无法做到这一点逻辑。

请帮助或提出您的建议。

红砖

1 个答案:

答案 0 :(得分:0)

您很可能找不到直接绘制此类图表的图表解决方案。但是,如果图表支持空数据点,则很容易建模。在这种情况下,代码必须这样做:

  1. 确定每个系列中的最大数据点数。
  2. 创建具有以下尺寸的矩阵(系列数,最大数据点数)
  3. 使用DBNull.Value(或图表视为空的任何值)填充整个矩阵。
  4. 取矩阵中的第n个系列并将其复制到第n列。
  5. 将矩阵导入图表,其中每行是一个单独的堆叠条形码系列。
  6. 上述内容当然可以优化,但这是如何“反转”数据的主要思路。