C# 创建包含 2 个 YValue 的图表
本文关键字:YValue 创建 包含 | 更新日期: 2023-09-27 18:34:22
我想在Visual Studio中创建一个包含1个XValue和2个YValues的图表(ChartType = Range)。如何将数据(例如字典)绑定到此图表?
对于所有其他图表(只有 1 个 YValue),我成功地使用以下代码将整个字典绑定到图表:
Dictionary<int, int> Dictionary1;
...
chart1.Series["Series1"].Points.DataBindXY(Dictionary1.Keys, Dictionary1.Values);
我试图将 a List 绑定到 YValues,但这不起作用(运行时错误:只有以下类型是可能的双精度、十进制、单精度、整数、长整型、uint、ulong、字符串、日期时间、短、ushort):
Dictionary<int, List<int>> Dictionary2;
...
chart2.Series["Series2"].Points.DataBindXY(Dictionary2.Keys, Dictionary2.Values);
谢谢,卢克
您必须传递两个以逗号分隔的 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 值的数量取决于它。