Hide labels in pie charts (MS Chart for .Net)

前端 未结 7 1334
梦毁少年i
梦毁少年i 2021-01-03 23:01

\"ugly

I can\'t seem to find the prope

相关标签:
7条回答
  • 2021-01-03 23:21

    Found the answer here: http://social.msdn.microsoft.com/Forums/en-US/MSWinWebChart/thread/32ccd993-5f43-47a3-bcbc-e772a13a87fe

    It turns out there is an obscure DataPointCustomProperty called PieLabelStyle that governs label visibility in pie charts. Worse still, the property must be set on each data point.

    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 讨论(0)
  • 2021-01-03 23:23

    May be this website solve your problem

    protected void Page_Load(object sender, EventArgs e) {
    // Insert code to create basic pie chart // See my blog post entitled "Pie Charts in ASP.NET" for full source code

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

    Also visit this website i also take this code from that website very nice tutorial on mscharts http://betterdashboards.wordpress.com/2009/02/04/display-percentages-on-a-pie-char

    0 讨论(0)
  • 2021-01-03 23:25
    Chart1.Series[i]["PieLabelStyle"] = "Disabled";
    

    works too, and doesn't need to be set for each datapoint.

    0 讨论(0)
  • 2021-01-03 23:33

    ...and Ben's answer in VB.NET format:

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

    works fine for setting whole series

    0 讨论(0)
  • 2021-01-03 23:36

    This can also be done in the UI by

    1. Opening the Series editor window (ellipsis button in the main properties panel)
    2. Selecting the wanted series
    3. Expanding the CustomProperties property
    4. Choosing Disabled

    0 讨论(0)
  • 2021-01-03 23:42
    objChart.ChartAreas[0].AxisY.LabelStyle.Enabled = false;
    
    0 讨论(0)
提交回复
热议问题