首页 > 代码库 > MS Chart Control 學習手記(二) - 圓餅圖

MS Chart Control 學習手記(二) - 圓餅圖

using System.Web.UI.DataVisualization.Charting;
02using System.Drawing;
03 
04namespace Chart.AJAX
05{
06    public partial class Export_AJAX : System.Web.UI.Page
07    {
08        void CreateChart()
09        {
10            string[] xValues = { "0-20""20-30""30-40""40-50""50-60""> 60""unknow" };
11            int[] yValues = {5, 18, 45, 17, 2, 1, 162 };
12 
13            //ChartAreas,Series,Legends 基本設定-------------------------------------------------
14            Chart Chart1 = new Chart();
15            Chart1.ChartAreas.Add("ChartArea1"); //圖表區域集合
16            Chart1.Legends.Add("Legends1"); //圖例集合說明
17            Chart1.Series.Add("Series1"); //數據序列集合
18 
19            //設定 Chart-------------------------------------------------------------------------
20            Chart1.Width = 770;
21            Chart1.Height = 400;
22            Title title = new Title();
23            title.Text = titleStr;
24            title.Alignment = ContentAlignment.MiddleCenter;
25            title.Font = new System.Drawing.Font("Trebuchet MS", 14F, FontStyle.Bold);
26            Chart1.Titles.Add(title);
27 
28            //設定 ChartArea1--------------------------------------------------------------------
29            Chart1.ChartAreas["ChartArea1"].Area3DStyle.Enable3D = is3D;
30            Chart1.ChartAreas[0].AxisX.Interval = 1;
31 
32            //設定 Legends-------------------------------------------------------------------------               
33            //Chart1.Legends["Legends1"].DockedToChartArea = "ChartArea1"; //顯示在圖表內
34            //Chart1.Legends["Legends1"].Docking = Docking.Bottom; //自訂顯示位置
35            //背景色
36            Chart1.Legends["Legends1"].BackColor = Color.FromArgb(235, 235, 235);
37            //斜線背景
38            Chart1.Legends["Legends1"].BackHatchStyle = ChartHatchStyle.DarkDownwardDiagonal;
39            Chart1.Legends["Legends1"].BorderWidth = 1;
40            Chart1.Legends["Legends1"].BorderColor = Color.FromArgb(200, 200, 200);
41 
42            //設定 Series1-----------------------------------------------------------------------
43            Chart1.Series["Series1"].ChartType = SeriesChartType.Pie;
44            //Chart1.Series["Series1"].ChartType = SeriesChartType.Doughnut;
45            Chart1.Series["Series1"].Points.DataBindXY(xValues, yValues);
46            Chart1.Series["Series1"].LegendText = "#VALX:    [ #PERCENT{P1} ]"//X軸 + 百分比
47            Chart1.Series["Series1"].Label = "#VALX\n#PERCENT{P1}"//X軸 + 百分比
48            //Chart1.Series["Series1"].LabelForeColor = Color.FromArgb(0, 90, 255); //字體顏色
49            //字體設定
50            Chart1.Series["Series1"].Font = new System.Drawing.Font("Trebuchet MS", 10, System.Drawing.FontStyle.Bold);
51            Chart1.Series["Series1"].Points.FindMaxByValue().LabelForeColor = Color.Red;
52            //Chart1.Series["Series1"].Points.FindMaxByValue().Color = Color.Red;
53            //Chart1.Series["Series1"].Points.FindMaxByValue()["Exploded"] = "true";
54            Chart1.Series["Series1"].BorderColor = Color.FromArgb(255, 101, 101, 101);
55             
56            //Chart1.Series["Series1"]["DoughnutRadius"] = "80"; // ChartType為Doughnut時,Set Doughnut hole size
57            //Chart1.Series["Series1"]["PieLabelStyle"] = "Inside"; //數值顯示在圓餅內
58            Chart1.Series["Series1"]["PieLabelStyle"] = "Outside"//數值顯示在圓餅外
59            //Chart1.Series["Series1"]["PieLabelStyle"] = "Disabled"; //不顯示數值
60            //設定圓餅效果,除 Default 外其他效果3D不適用
61            Chart1.Series["Series1"]["PieDrawingStyle"] = "Default";
62            //Chart1.Series["Series1"]["PieDrawingStyle"] = "SoftEdge";
63            //Chart1.Series["Series1"]["PieDrawingStyle"] = "Concave";
64 
65            //Random rnd = new Random();  //亂數產生區塊顏色
66            //foreach (DataPoint point in Chart1.Series["Series1"].Points)
67            //{
68            //    //pie 顏色
69            //    point.Color = Color.FromArgb(150, rnd.Next(0, 255), rnd.Next(0, 255), rnd.Next(0, 255));
70            //}
71            Page.Controls.Add(Chart1); 
72        }
73    }
74}

 

畫出來的圓餅圖就像這樣
技术分享

MS Chart Control 學習手記(二) - 圓餅圖