How to set chart type to pie
41,528
You are adding multiple Series
, each with one Point
. As a result the charting control only displays the first Series
.
I believe what you are wanting to do is adding multiple points to a single Series
.
I'm not sure I understand what you are trying to do with the HtmlNode
but the code below demonstrate how to build a simple pie chart from a Dictionary
using a tag name as Key and an integer as Value.
Dictionary<string, int> tags = new Dictionary<string,int>() {
{ "test", 10 },
{ "my", 3 },
{ "code", 8 }
};
chart1.Series[0].Points.Clear();
chart1.Series[0].ChartType = System.Windows.Forms.DataVisualization.Charting.SeriesChartType.Pie;
foreach (string tagname in tags.Keys)
{
chart1.Series[0].Points.AddXY(tagname, tags[tagname]);
//chart1.Series[0].IsValueShownAsLabel = true;
}
Author by
a1204773
Updated on July 29, 2022Comments
-
a1204773 almost 2 years
When I do it without putting chart type is working fine but when I set it to pie its not working correct. It put all series name as Point 1 the pie is only 1 blue piece (one circle) and it show only first point (Value).
foreach (var tag in tags) { HtmlNode tagname = tag.SelectSingleNode("a"); HtmlNode tagcount = tag.SelectSingleNode("span/span"); chart1.Series.Add(tagname.InnerText); chart1.Series[x].Points.AddY(int.Parse(tagcount.InnerText)); chart1.Series[x].IsValueShownAsLabel = true; chart1.Series[x].ChartType = System.Windows.Forms.DataVisualization.Charting.SeriesChartType.Pie; x++; }