2016-11-04 2 views
2

Ich mache gerade ein Fensterformular, das innen Pie Chart hat. Ich muss den Prozentsatz des Kuchens zeigen.Wie man verschiedene Beschriftung in der Legende in Kreisdiagramm setzt

Aber jetzt habe ich ein Problem eencountered: Wenn ich diese #PERCENT{P2} zu Serie hinzufügen Pie Chart wie diese zeigen:

enter image description here

Aber wenn ich es entfernen, die Pie Chart wie diese

zeigen

enter image description here

Ist es möglich, die Pie Chart so zu machen? enter image description here

Mein 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(); 

Antwort

3

Ja, das ist leicht getan, indem die LegendText für jedes Ihrer DataPoints wie diese Einstellung:

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

Wenn Ihre x-Werte aussagekräftigen Zahlen enthalten können Sie benutze sie:

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

Aber wenn Sie die x-Werte als Strings hinzugefügt haben, sind sie verloren und Sie müssen eine andere Quelle für die LegendTexts verwenden.

Wenn Sie nur eine feste Anzahl von DataPoints haben Sie die LegendTexts direkt einstellen:

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

Beachten Sie, dass in der Regel ein Legend zeigt einen Eintrag pro Series. Aber für ein Pie Diagramm zeigt es einen Eintrag pro DataPoint!

+0

Ich weiß nur, dass dieses Element Anruf Legende Text ist, danke –

Verwandte Themen