WinForm中Chart控件使用

对于Chart这个图表控件,知道它但是没有怎么用过,所以今天记录并分享给大家(我这边做的是折线图)。

一.先建一个WinForm项目,然后拖一个Chart控件,如下图:

 二.给Chart控件的Series属性添加集合,因为我这边要做四条折线,所以我就添加了四个,大家根据自身需求添加。

这里面的属性的话,我感觉比较重要就这两个。

(一)CharType属性:因为我用的是折线,所以我选择Line,它里面还有很多大家可以去研究一下。

(二)Color属性:数据点颜色(我选择的折线图,也就是折线的颜色)。

(三)Name属性:这边写好这个图表的名称,右边会对应生成图表图例,会结合上面你选择的Color和Name生成。

都弄好后如下图:

三. 下面就可以绑定数据源了,代码如下:

因为我有四个折线图,所以说每一个节点处需要对应四个数据,这边我用了一个实体类(XyLocationModel),如下:

    public class XyLocationModel
    {
        /// <summary>
        /// 第一个
        /// </summary>
        public int ACount { get; set; }

        /// <summary>
        /// 第二个
        /// </summary>
        public int BCount { get; set; }

        /// <summary>
        /// 第三个
        /// </summary>
        public int CCount { get; set; }

        /// <summary>
        /// 第四个
        /// </summary>
        public int DCount { get; set; }
    }
    public partial class Form1 : Form
    {
        public List<XyLocationModel> list = new List<XyLocationModel>();

        public Form1()
        {
            InitializeComponent();
            //初始化数据源
            Random rd = new Random();
            
            //我这边是循环30次并给随机数(偷懒),得到我们需要给图表绑定的数据源list
            for (int i = 0; i < 30; i++)
            {
                XyLocationModel xy = new XyLocationModel();
                xy.ACount = rd.Next(0, 500);
                xy.BCount = rd.Next(0, 500);
                xy.CCount = rd.Next(0, 500);
                xy.DCount = rd.Next(0, 500);

                list.Add(xy);
            }
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            //循环绑定数据源
            for (int i = 0; i < list.Count(); i++)
            {
                //分别给四个图表添加节点,X轴我就是从1开始
                chart1.Series[0].Points.AddXY(i + 1, list[i].ACount);
                chart1.Series[1].Points.AddXY(i + 1, list[i].BCount);
                chart1.Series[2].Points.AddXY(i + 1, list[i].CCount);
                chart1.Series[3].Points.AddXY(i + 1, list[i].DCount);
            }
        }
    }

完成后可以看结果了,如图:

 

 最后就是,一些属性的问题,自己用到感觉比较重要的。

Chart控件——>ChartArea属性——>轴下面的Axes——>X axis——>刻度——>Maximun和Minimum(设置X轴刻度最大和最小值)像我做的就是Maximun为31、Minimun为1;

Chart控件——>ChartArea属性——>轴下面的Axes——>X axis——>网格刻度线——>MajorGrid——>Interval(网络或标记间隔大小)默认是Auto这样刻度会自动给你分配

Chart控件——>ChartArea属性——>轴下面的Axes——>X axis——>间隔——>Interval(轴间隔大小)默认是Auto这样间隔会自动给你分配 ,下图我Y轴间隔设置了500,它的Y轴就每500间隔一次。

 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值