WinForm中Chart的使用

一、博文摘要:Chart属性的的介绍

原文链接
Chart 可以绘制多个 ChartArea,每个 ChartArea 都可以绘制多条 Series。ChartArea 就是就是绘图区域,可以有多个 ChartArea 叠加在一起,Series 是画在 ChartAarea 上的,Series 英文意思是“序列、连续”,其实就是数据线,它可以是曲线、点、柱形、条形、饼图。

Chart.ChartAreas 属性:获取用于存储 ChartArea 对象的只读 ChartAreaCollection 对象。ChartArea 对象用于绘制一个或多个图表。
Chart.Series 属性:获取 SeriesCollection 对象。Series 对象存储 DataPoint 的对象,以及数据特性

二、结合代码的案例介绍

        private void BindData1()
        {
            List<int> x = new List<int>();
            List<int> y = new List<int>();
            List<int> y2 = new List<int>();
            y2.Add(20);
            Random ran = new Random();
            for (int i = 0; i < 10; i++)
            {
                x.Add(i);
                y.Add(ran.Next(1, 100));
            }
            this.chart1.ChartAreas[0].AxisX.MajorGrid.LineColor = System.Drawing.Color.Transparent;//设置y轴和x轴的网格线Wie透明
             
            chart1.ChartAreas["ChartArea1"].AxisX.Title = "随机数";//设置坐标轴的标题
            chart1.ChartAreas["ChartArea1"].AxisY.Title = "数值";
            chart1.Series["Series1"].IsValueShownAsLabel = true;//把值当做标签显示          
            chart1.Series["Series1"].Points.DataBindXY(x, y);//第一种绑定的方式
            chart1.Series["Series2"].Points.DataBindY(y2);//第二种绑定的方式
            chart1.Series["Series2"].Points[0].Color = Color.YellowGreen;//手动设置颜色
           // chart1.Series["Series1"].ChartType = SeriesChartType.Pie;
           // chart1.Series["Series2"].ChartType = SeriesChartType.Pie;//设置饼状图

        }
        private void BindData2()
        {
            chart1.Series.Clear();  //清除默认的Series
            Series Strength = new Series("力量");  //new 一个叫做【Strength】的系列
            Strength.ChartType = SeriesChartType.Pie;  //设置chart的类型 pie饼状图
            Strength.IsValueShownAsLabel = true; //把值当做标签展示(默认false)          
           // Strength.Label = "#VALX:#PERCENT{P0}";//#VALX显示X轴信息,#PERCENT{P0}以百分比显示Y轴信息,{P0}保留0位小数点
            int[] arr = new int[] { 20, 20, 20, 40 };
           //给系列上的点进行赋值,分别对应横坐标和纵坐标的值
           for (int i = 1; i <= arr.Length; i++)
           {
               Strength.Points.AddXY(i, arr[i - 1]);
           }
           Strength.Points[0].Color = Color.Yellow; //实现控制饼状图的颜色,改变对应下标的扇形的颜色
            //把series添加到chart上
           chart1.Series.Add(Strength);
           
        }

补充:Chart中一些细节样式设置

WinForm中Chart的使用

Legends (图例)
Alignment : 设置显示的位置 (左右)
Docking : 设置显示的位置(上下)
(多个Series共用一个Legends)

ChartAreas (图表区)
Axes : 轴集合, 可以设置 X,Y轴的各个属性,
常用:
间隔 intervalAutoMode : 设置X、Y的数据间隔, 显示更加具体
设置双Y轴: 找到 Axes集合中的Y 轴的 Enabled属性设置为true

Titles (标题)
Alignment 、Docking 可以设置标题的显示位置。

设置横坐标不显示

chart1.ChartAreas[0].AxisX.Enabled = AxisEnabled.False;

其他博客参考:
1.如何隐藏网格线
2.Chart的简单使用
3.chart绘制曲线
4.绘制饼状图

            List<string> xData = new List<string>() { "A", "B", "C", "D" };
            List<int> yData = new List<int>() { 10, 20, 30, 40 };
            chart1.Series[0]["PieLabelStyle"] = "Outside";//将文字移到外侧
            chart1.Series[0]["PieLineColor"] = "Black";//绘制黑色的连线。
            chart1.Series[0].Points.DataBindXY(xData, yData);
上一篇:urlscan使用详解


下一篇:AnyGantt使用教程:如何创建3D面积图和3D条形图