图表不会显示数据点
Chart will not display DataPoints
我正在尝试使用字典中的值创建 Chart
,但是我的 Chart
没有显示任何内容。我的代码运行良好,没有错误,我在表格上有一个图表。
我以前从未用 C# 制作过图表,所以我不知道我在做什么。
这是我填写的代码。
如果我删除 StatChart.update()
,它将在图表上显示 Dictionary
中的项目总数,但仅此而已
private void FillStatChart(Dictionary<string, int> dictionary)
{
int dicLength = dictionary.Count;
StatChart.Series.Clear();
StatChart.Series.Add("Occurences");
foreach (System.Windows.Forms.DataVisualization.Charting.DataPoint point in StatChart.Series["Occurences"].Points)
{
foreach (KeyValuePair<string, int> pair in dictionary)
{
for (int idx = 0; idx < dicLength; idx++)
{
point.SetValueXY(idx, pair.Value);
StatChart.Update();
}
}
}
}
您需要 Add
新的 DataPoints
到 Points
collection。
改变这个:
foreach (System.Windows.Forms.DataVisualization.Charting.DataPoint point in StatChart.Series["Occurences"].Points)
{
foreach (KeyValuePair<string, int> pair in dictionary)
{
for (int idx = 0; idx < dicLength; idx++)
{
point.SetValueXY(idx, pair.Value);
StatChart.Update();
}
}
}
对此:
Series S = StatChart.Series["Occurences"];
for (int idx = 0; idx < dicLength; idx++)
{
KeyValuePair<string, int> pair = dictionary.ElementAt(idx);
S.Points.AddXY(idx, pair.Value);
S.Points[idx].ToolTip = pair.Key; // optional tooltip
}
SetValueXY
仅用于 更改 以后 DataPoint
的值。
我正在尝试使用字典中的值创建 Chart
,但是我的 Chart
没有显示任何内容。我的代码运行良好,没有错误,我在表格上有一个图表。
我以前从未用 C# 制作过图表,所以我不知道我在做什么。
这是我填写的代码。
如果我删除 StatChart.update()
,它将在图表上显示 Dictionary
中的项目总数,但仅此而已
private void FillStatChart(Dictionary<string, int> dictionary)
{
int dicLength = dictionary.Count;
StatChart.Series.Clear();
StatChart.Series.Add("Occurences");
foreach (System.Windows.Forms.DataVisualization.Charting.DataPoint point in StatChart.Series["Occurences"].Points)
{
foreach (KeyValuePair<string, int> pair in dictionary)
{
for (int idx = 0; idx < dicLength; idx++)
{
point.SetValueXY(idx, pair.Value);
StatChart.Update();
}
}
}
}
您需要 Add
新的 DataPoints
到 Points
collection。
改变这个:
foreach (System.Windows.Forms.DataVisualization.Charting.DataPoint point in StatChart.Series["Occurences"].Points)
{
foreach (KeyValuePair<string, int> pair in dictionary)
{
for (int idx = 0; idx < dicLength; idx++)
{
point.SetValueXY(idx, pair.Value);
StatChart.Update();
}
}
}
对此:
Series S = StatChart.Series["Occurences"];
for (int idx = 0; idx < dicLength; idx++)
{
KeyValuePair<string, int> pair = dictionary.ElementAt(idx);
S.Points.AddXY(idx, pair.Value);
S.Points[idx].ToolTip = pair.Key; // optional tooltip
}
SetValueXY
仅用于 更改 以后 DataPoint
的值。