尝试从末尾迭代到 0,如下所示:
series.ChartType = SeriesChartType.RangeBar;
for (int i = 2; i > -1; i--)
series.Points.AddXY(i, (rand.Next(3600, 7200)), (rand.Next(30000, 80000)));
使用以下代码,我让经理创建两个具有相同数据但增长方向不同的图表:
int[] val = new int[3];
chart1.Series.Add(series);
for (int i = 0; i < 3; i++)
{
val[i] = rand.Next(30000, 80000);
series.Points.AddXY(i, val[i]);
}
Series series2 = new Series();
series2.ChartType = SeriesChartType.RangeBar;
chart2.Series.Add(series2);
for (int i = 2; i > -1; i--)
{
series2.Points.AddXY(i, val[-i+2]);
}
如果用户被授予更改方向的可能性,您可以在用户更改方向时重新创建/重新打印图表。我知道这远非最佳,但知道这是我能建议的最好的。
如果答案不能满足您的需求,这里有一些示例(在该download
部分中),您可能会发现它们很有用:
图表