2010-01-27 11 views
17

ugly pie chartUkryj etykiety w wykresy kołowe (wykres MS NET)

I nie wydaje się znaleźć właściwość, która kontroluje widoczność etykiet wykresów kołowych. Muszę wyłączyć etykiety, ponieważ informacje są dostępne w legendzie.

Ktoś wie, jaką właściwość mogę użyć w kodzie?

Próbowałem ustawić etykiety serii na nic. Chart1.Series[i].Label = string.Empty;, ale etykiety i tak się pojawią.

Odpowiedz

36
Chart1.Series[i]["PieLabelStyle"] = "Disabled"; 

działa zbyt, i nie muszą być ustawione dla każdego Datapoint.

+0

Fajnie, dzięki Ben! – grenade

+0

Ustawienie dla całej serii zamiast pojedynczego punktu danych nie działa dla mnie .. –

+0

Nic dziwnego, że nie mogłem tego odgadnąć! Dzięki. –

7

Okazało się, że odpowiedź tutaj: http://social.msdn.microsoft.com/Forums/en-US/MSWinWebChart/thread/32ccd993-5f43-47a3-bcbc-e772a13a87fe

Okazuje się, że jest niejasne DataPointCustomProperty nazywa PieLabelStyle że reguluje widoczność etykiety na wykresach kołowych. Co gorsza, właściwość musi być ustawiona na każdym punkcie danych.

for (var i = 0; i < chart.Series.Count; i++) 
    for (var j = 0; j < chart.Series[i].Points.Count; j++) 
     chart.Series[i].Points[j]["PieLabelStyle"] = "Disabled"; 
0
objChart.ChartAreas[0].AxisY.LabelStyle.Enabled = false; 
+0

Testowałeś to z wykresami kołowymi? Obowiązuje dla większości typów wykresów, ale w lutym nie wpłynęło to na wykresy kołowe. Czy to się zmieniło? – grenade

6

Zmienianie właściwości wykresu niestandardowych rade, jak również i bez kodowania potrzebne

<asp:Series Name="Series1" ChartType="Pie" CustomProperties="PieLabelStyle=Disabled"> 
1

Może być to strona rozwiązać problemu

protected void Page_Load (object sender, EventArgs e) {
// Wstaw kod do utworzenia podstawowego wykresu kołowego // Zobacz mój blog zatytułowany "Wykresy kołowe w ASP.NET" dla pełnego kodu źródłowego

 // Set pie labels to be outside the pie chart 
    this.Chart2.Series[0]["PieLabelStyle"] = "Outside"; 

    // Set border width so that labels are shown on the outside 
    this.Chart2.Series[0].BorderWidth = 1; 
    this.Chart2.Series[0].BorderColor = System.Drawing.Color.FromArgb(26, 59, 105); 

    // Add a legend to the chart and dock it to the bottom-center 
    this.Chart2.Legends.Add("Legend1"); 
    this.Chart2.Legends[0].Enabled = true; 
    this.Chart2.Legends[0].Docking = Docking.Bottom; 
    this.Chart2.Legends[0].Alignment = System.Drawing.StringAlignment.Center; 

    // Set the legend to display pie chart values as percentages 
    // Again, the P2 indicates a precision of 2 decimals 
    this.Chart2.Series[0].LegendText = "#PERCENT{P2}"; 

    // By sorting the data points, they show up in proper ascending order in the legend 
    this.Chart2.DataManipulator.Sort(PointSortOrder.Descending, Chart2.Series[0]); 
} 

również odwiedzić tę stronę i również wziąć ten kod z tej strony bardzo ładny samouczek na mscharts http://betterdashboards.wordpress.com/2009/02/04/display-percentages-on-a-pie-char

1

... i odpowiedź Bena w formacie VB.NET:

Chart1.Series(0)("PieLabelStyle") = "Disabled" 

działa poprawnie ustawienie całość seria