我有一个包含3个系列的dotnetcharting图。我可以将整个图形的样式更改为堆叠。
ChartIn.YAxis.Scale = Scale.Stacked;
但我想在三个系列中叠加两个。因此,对于每一个,有两个条组合成一个堆栈,旁边有另一个整条。
可以这样做吗?
答案 0 :(得分:1)
最后,我将我想要的数据从堆栈中分离成一个单独的实线系列。不理想,但看起来很好。
ChartThree.SeriesCollection[3].Type = SeriesType.AreaLine;
答案 1 :(得分:0)
实现此目的的方法是创建一个额外的比例并将额外系列的YAxis设置为该比例。可以独立于第一刻度是否堆叠来堆叠第二刻度。请注意,您需要在第二个刻度上调整范围,以使值以正确的相对大小显示。
这是一个生成带有两个独立堆叠数据的图表的示例(使用之前已填充了4个系列的图表):
//set main chart to stacked
Chart.YAxis.Scale = Scale.Stacked;
//create new axis, assign it to relevant series, and set it's scale to stacked
Axis a2 = new Axis();
Chart.SeriesCollection[2].YAxis = a2;
Chart.SeriesCollection[3].YAxis = a2;
a2.Scale = Scale.Stacked;
//tie the scales together to ensure proper relative display
Chart.YAxis.SynchronizeScale.Add(a2);