How to set different Label in Legend in Pie Chart

坚强是说给别人听的谎言 提交于 2019-11-27 07:28:47

问题


I'm currently doing a window form that have Pie Chart inside.I need to show the percentage of the pie.

But now I have eencountered a problem : When I add this #PERCENT{P2} to series the Pie Chart will show like this:

But if I remove it, the Pie Chart will show like this

Is there possible to make the Pie Chart Like this?

My Code:

DataTable dt = new DataTable();
        dt.Columns.Add("completed", typeof(string));
        dt.Columns.Add("no", typeof(int));
        int noin = allitem - intime;
        dt.Rows.Add("Complete In Time", intime);
        dt.Rows.Add("OverDue", noin);

        chart1.DataSource = dt;

        chart1.DataBind();

回答1:


Yes, this is easily done by setting the LegendText for each of your DataPoints like this:

foreach (DataPoint dp in yourSeries.Points) dp.LegendText = yourLabel;

If your x-values contain meaningful numbers you can use them:

foreach (DataPoint dp in s.Points) dp.LegendText = dp.XValue + "";

But if you added the x-values as strings they are lost and you have to use another source for the LegendTexts.

If you only have a fixed number of DataPoints you can set the LegendTexts directly:

yourSeries.Points[0].LegendText = "hi";
yourSeries.Points[1].LegendText = "ho";
yourSeries.Points[2].LegendText = "hum";

Note that usually a Legend shows one entry per Series. But for a Pie chart it shows one entry per DataPoint!



来源:https://stackoverflow.com/questions/40416493/how-to-set-different-label-in-legend-in-pie-chart

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!