C# 使用ChartControl控件制作曲线图

发布时间:2025-12-09 12:05:55 浏览次数:1

示例目的:使用时间器添加曲线图的点,以达到实时描绘曲线图的效果。X轴显示时分,Y轴显示0-20的随机数

1. 必须安装DevExpress控件,没有安装的朋友可以使用下面的云盘链接下载安装

链接:https://pan.baidu.com/s/1iRg8qLtBHjDV6IlRq6-mFg

提取码:xyl2

2. 新建Windows窗体应用程序,直接在工具箱搜索ChartControl并使用改组件

3. 添加曲线图,并设置其属性

当拖拉该组件到窗体设计页面时,会弹出【Chart Designer】,可在此处添加曲线图,并设置其属性

3.1. Series Collection:在此处添加曲线图,实例添加的是Line Series下的Line曲线

GENERAL-LabelsVisibility:显示点对应Y轴的数值

VIEW:MARKER OPTIONS:线上的实心点设置

VIEW:APPEARANCE:线的设置

3.2 因为时模拟的数据,所以我们要设置X轴的参数类型为自定义

4. 开始实现功能

 1 using DevExpress.XtraCharts; 2 using System; 3 using System.Windows.Forms; 4  5 namespace ChartControl 6 { 7     public partial class Form1 : Form 8     { 9         private const int _pointsCount = 15;  //固定保留15个点10         private int _hour = 0;11         private int _minute = 0;12         private SeriesPointCollection _points;13 14         public Form1()15         {16             InitializeComponent();17             _points = chartControl1.Series[0].Points;18         }19 20         private void timer1_Tick(object sender, EventArgs e)21         {22             if (_minute >= 60)23             {24                 _hour += 1;25                 _minute = 0;26             }27             if (_hour == 24)28             {29                 _hour = 0;30             }31             if (_points.Count >= _pointsCount)32             {33                 _points.RemoveAt(0);34             }35             var argument = $"{_hour.ToString().PadLeft(2, '0')}:{_minute.ToString().PadLeft(2, '0')}";  // X轴数据36             var value = Math.Round(new Random().NextDouble() * 20, 2);  // Y轴数据37             var seriesPoint = new SeriesPoint(argument, value);38             _points.Add(seriesPoint);39             _minute += 1;40         }41     }42 }

5. 启用计时器,查看效果

有其他需求可以查看控件属性进行修改,我在这里就不详述了。

实例源码链接:https://github.com/Jcanc/ChartControl

chartcontrol
需要做网站?需要网络推广?欢迎咨询客户经理 13272073477