2

我在 C# 代码中有一个 datagridview“regionVolumeTable”和一个图表对象“pieChart”,datagridview 对象中有一行数据,布局如下

DATE   |  NY   |   MA  | CA   | FL  
3/1/13 |  100  |  120  | 150  | 200

我正在努力使用 ("NY", "MA", "CA", "FL") 作为图例饼图和row[1]、column[1]、[2]、[3]、[4](100、120、150、200)作为绘制饼图的值。

我知道我需要对 row[1] 中的 column[1...4] 求和以获得总和,然后划分每个扇区以获得要绘制的度数。

到目前为止,我有:

for (int colindex = 1; colindex < 5; colindex++)
{
   pieChart.Series.Add((string)regionVolumeTable.Columns[colindex].Name);

}

而且我不知道如何继续完成以获取分配的值以绘制饼图。

4

1 回答 1

0

对于Pie图表,您只能拥有一个Series. DataPoints为每个数据值添加一个:

Series s = pieChart.Series.Add("pie");
s.ChartType = SeriesChartType.Pie;
s.IsValueShownAsLabel = true;
for (int colindex = 1; colindex < regionVolumeTable.Columns.Count; colindex++)
{
    s.Points.AddXY(regionVolumeTable.Columns[colindex].HeaderText,
                   regionVolumeTable[colindex, 0].Value);
}

在此处输入图像描述

请注意,图表看起来好像包含多个Series; 但在Pie图表中,每个DataPoint都显示在Legend

于 2016-08-27T10:07:15.637 回答