我有一个Chart
,其中有三个ChartArea
。第一个图表区域chartarea1
绘制来自series1
,chartarea2
图series2
的数据。但我希望chartarea3
能够制作series1
和series2
。我的所有搜索都返回了在Series
上绘制多个ChartArea
的方式,而我没有遇到问题,我想要做的是在多个{Series
上绘制ChartArea
1}}秒。有没有办法做到这一点? Series["item"].ChartArea
属性仅设置一个ChartArea
。
这是我的尝试,我尝试创建series3
和series4
并分别为series1
和series2
分配,但它不起作用(我怀疑是因为它们是引用类型,它实际上并没有克隆series1
和series2
,我觉得我将不得不这样做。
ChartArea chartarea1 = new ChartArea();
chartarea1.Name = "chartarea1";
chart1.ChartAreas.Add(chartarea1);
Series series1 = new Series();
series1.Name = "series1";
series1.ChartType = SeriesChartType.Line;
chart1.Series.Add(series1);
chart1.Series["series1"].ChartArea = "chartarea1";
chart1.Series["series1"].Points.DataBindY(someArray1);
ChartArea chartarea2 = new ChartArea();
chartarea2.Name = "chartarea2";
chart1.ChartAreas.Add(chartarea2);
Series series2 = new Series();
series2.Name = "series2";
series2.ChartType = SeriesChartType.Line;
chart1.Series.Add(series2);
chart1.Series["series2"].ChartArea = "chartarea2";
chart1.Series["series2"].Points.DataBindY(someArray2);
ChartArea chartarea3 = new ChartArea();
chartarea3.Name = "chartarea3";
chart1.ChartAreas.Add(chartarea3);
Series series3 = series1;
Series series4 = series2;
series3.Name = "series3";
series4.Name = "series4";
chart1.Series["series3"].ChartArea = "chartarea3";
chart1.Series["series4"].ChartArea = "chartarea3";
chart1.Invalidate();
截至目前,当我排除涉及chartarea3
,series3
和series4
的代码时,它会按照我的预期进行绘制:两个折线图,首先显示来自{{1的数据下面的第二个,显示来自someArray1
的数据。但是,如果我包含其余代码,那么表单会显示一个大空格,someArray2
和chartarea1
应该是chartarea2
,然后是chartarea3
,sommeArray1
和sommeArray2
绘制了。
提前致谢。