我想在Visual Studio中创建一个包含1个XValue和2个YValues(ChartType = Range)的图表。 如何将数据(例如字典)绑定到此图表?
对于所有其他图表(只有1个YValue),我成功使用以下代码将整个字典绑定到图表:
Dictionary<int, int> Dictionary1;
...
chart1.Series["Series1"].Points.DataBindXY(Dictionary1.Keys, Dictionary1.Values);
我试图将一个List绑定到YValues但是没有用(运行时错误:只有以下类型可能是Double,Decimal,Single,int,long,uint,ulong,String,DateTime,short, ushort):
Dictionary<int, List<int>> Dictionary2;
...
chart2.Series["Series2"].Points.DataBindXY(Dictionary2.Keys, Dictionary2.Values);
谢谢,卢克
答案 0 :(得分:1)
你必须传递两个逗号分隔的y值:
chart2.Series["Series2"].ChartType = SeriesChartType.Range;
int[] y1 = Dictionary2.Values.Select(y => y[0]).ToArray();
int[] y2 = Dictionary2.Values.Select(y => y[1]).ToArray();
chart2.Series["Series2"].Points.DataBindXY(Dictionary2.Keys, y1, y2);
之前设置ChartType非常重要,因为可能的y值取决于它。