Masquer les étiquettes dans les graphiques à secteurs (MS Chart) for.Net)
je n'arrive pas à trouver la propriété qui détermine la visibilité des labels dans les diagrammes à secteurs. J'ai besoin d'éteindre les étiquettes car l'information est disponible dans la légende.
Quelqu'un sait quelle propriété je peux utiliser en code derrière?
j'ai essayé de réglage de la série étiquettes à rien Chart1.Series[i].Label = string.Empty;
mais les étiquettes semblent montrer de toute façon.
6 réponses
Chart1.Series[i]["PieLabelStyle"] = "Disabled";
fonctionne aussi, et n'a pas besoin d'être définie pour chaque point de données.
Trouvé la réponse ici: http://social.msdn.microsoft.com/Forums/en-US/MSWinWebChart/thread/32ccd993-5f43-47a3-bcbc-e772a13a87fe
il s'avère qu'il existe une obscure propriété de données appelée PieLabelStyle qui régit la visibilité des étiquettes dans les diagrammes circulaires. Pire encore, la propriété doit être définie pour chaque point de données.
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";
l'Évolution graphique des propriétés personnalisées fera l'affaire) et aucun codage n'est nécessaire
<asp:Series Name="Series1" ChartType="Pie" CustomProperties="PieLabelStyle=Disabled">
Peut-être ce site résoudre votre problème
protected void Page_Load (object sender, EventArgs e)
{
// Insérer le code pour créer le diagramme circulaire de base
// Voir mon billet de blog intitulé "Pie Charts in ASP.NET" pour le code source complet
// 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]);
}
Visitez aussi ce site web Je prends aussi ce code de ce site très joli tutoriel sur mscharts http://betterdashboards.wordpress.com/2009/02/04/display-percentages-on-a-pie-char
...et la réponse de Ben VB.NET format:
Chart1.Series(0)("PieLabelStyle") = "Disabled"
fonctionne très bien pour mettre la série entière