Скрыть метки в круговых диаграммах (MS Chart для .Net) - PullRequest
18 голосов
/ 27 января 2010

ugly pie chart

Я не могу найти свойство, которое контролирует видимость меток в круговых диаграммах. Мне нужно отключить ярлыки, так как информация доступна в легенде.

Кто-нибудь знает, какое свойство я могу использовать в коде?

Я попытался установить метки серий на ничто Chart1.Series[i].Label = string.Empty;, но метки все равно появляются.

Ответы [ 6 ]

38 голосов
/ 22 февраля 2011
Chart1.Series[i]["PieLabelStyle"] = "Disabled";

тоже работает, и его не нужно устанавливать для каждой точки данных.

7 голосов
/ 27 января 2010

Нашел ответ здесь: http://social.msdn.microsoft.com/Forums/en-US/MSWinWebChart/thread/32ccd993-5f43-47a3-bcbc-e772a13a87fe

Оказывается, существует неясный DataPointCustomProperty, называемый PieLabelStyle, который управляет видимостью меток в круговых диаграммах. Хуже того, свойство должно быть установлено для каждой точки данных.

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";
6 голосов
/ 24 февраля 2011

Изменение пользовательских свойств диаграммы также поможет, и кодирование не требуется

<asp:Series Name="Series1" ChartType="Pie" CustomProperties="PieLabelStyle=Disabled">
1 голос
/ 16 июля 2014

... и ответ Бена в формате VB.NET:

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

отлично работает для настройки всей серии

1 голос
/ 05 ноября 2013

Может быть, этот сайт решит вашу проблему

защищенный void Page_Load (отправитель объекта, EventArgs e) {
// Вставляем код для создания базовой круговой диаграммы // Полный исходный код см. В моем блоге под названием «Круговые диаграммы в ASP.NET»

     // 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]);
 }

Также посетите этот веб-сайт, я также беру этот код с этого сайта, очень хороший учебник по mscharts http://betterdashboards.wordpress.com/2009/02/04/display-percentages-on-a-pie-char

0 голосов
/ 02 июня 2010
objChart.ChartAreas[0].AxisY.LabelStyle.Enabled = false;
...