2010-01-27 37 views
17

ugly pie chartẨn nhãn trong biểu đồ hình tròn (Biểu đồ MS cho .Net)

Tôi dường như không tìm thấy thuộc tính kiểm soát khả năng hiển thị nhãn trong biểu đồ hình tròn. Tôi cần tắt nhãn vì thông tin có sẵn trong chú giải.

Bất kỳ ai biết tôi có thể sử dụng tài sản nào trong mã phía sau?

Tôi đã thử đặt nhãn sê-ri thành không có gì là Chart1.Series[i].Label = string.Empty; nhưng các nhãn dường như vẫn hiển thị.

Trả lời

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

công trình quá, và không cần phải được thiết lập cho mỗi datapoint.

+0

Tuyệt vời, cảm ơn Ben! – grenade

+0

Đặt nó cho toàn bộ serie thay vì datapoint duy nhất không làm việc cho tôi .. –

+0

Không có thắc mắc tôi không thể đoán được điều này! Cảm ơn. –

7

Tìm thấy câu trả lời ở đây: http://social.msdn.microsoft.com/Forums/en-US/MSWinWebChart/thread/32ccd993-5f43-47a3-bcbc-e772a13a87fe

Hóa ra có một DataPointCustomProperty che khuất gọi PieLabelStyle đó điều chỉnh tầm nhìn nhãn trong biểu đồ pie. Tệ hơn nữa, tài sản phải được đặt trên mỗi điểm dữ liệu.

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

Bạn đã thử nghiệm điều này với biểu đồ hình tròn chưa? Nó có giá trị đối với hầu hết các loại biểu đồ nhưng vào tháng 2 nó không ảnh hưởng đến biểu đồ hình tròn. Điều này có thay đổi không? – grenade

6

Thay đổi thuộc tính biểu đồ tùy chỉnh sẽ làm các trick như tốt và không mã hóa là cần thiết

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

Có thể trang web này giải quyết vấn đề của bạn

protected void Page_Load (object sender, EventArgs e) {
// Chèn mã để tạo biểu đồ hình tròn cơ bản // Xem bài đăng trên blog của tôi có tiêu đề "Biểu đồ hình tròn trong ASP.NET" cho mã nguồn đầy đủ

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

Ngoài truy cập trang web này tôi cũng lấy mã này từ trang web đó rất đẹp hướng dẫn về mscharts http://betterdashboards.wordpress.com/2009/02/04/display-percentages-on-a-pie-char

1

... và câu trả lời của Ben ở định dạng VB.NET:

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

hoạt động tốt cho việc thiết lập toàn bộ series

Các vấn đề liên quan