首页

DevExpress绘制实时曲线

c#

2020-9-6

这篇文章(https://www.daboke.com)主要介绍了如何使用DevExpress的ChartControl控件绘制酷炫的实时的曲线

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using DevExpress.XtraCharts;
using System.Timers;

namespace lianxi3
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        int row = 0;//点数
        int value = 0;//数值
        Random rd = new Random();//随机值

        // 创建一个点图
        ChartControl pointChart = new ChartControl();
        // 创建一条曲线
        Series series1 = new Series("Series 1", ViewType.Point);

        private void addPoint(object source, System.Timers.ElapsedEventArgs e)
        {
            row = row   1;//点数自增
            value = rd.Next(15, 40);//生成随机值

            //点数超过50个时,曲线水平向左运动
            if (row < 50)
            {
                series1.Points.Add(new SeriesPoint(row, value));//添加新点
                label2.Text = value.ToString();
            }

            else
            {
                if (series1.Points.Count > 0)
                {
                    series1.Points.RemoveAt(0);//删除最左侧的点
                    series1.Points.Add(new SeriesPoint(row, value));//添加新点
                    label2.Text = value.ToString();
                }

            }
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            //定时器
            System.Timers.Timer t = new System.Timers.Timer(1000);//实例化Timer类,设置间隔时间为1000毫秒;
            t.Elapsed  = new System.Timers.ElapsedEventHandler(addPoint);//到达时间的时候执行事件;
            t.AutoReset = true;//设置是执行一次(false)还是一直执行(true);
            t.Enabled = true;//是否执行System.Timers.Timer.Elapsed事件;
            t.Start();//启动

            //设置序列的数字参数比例类型,默认情况下是定性的。
            series1.ArgumentScaleType = ScaleType.Numerical;

            //将线条加入到表中
            pointChart.Series.Add(series1);

            //访问该系列的特定于视图类型的选项。
            PointSeriesView myView1 = (PointSeriesView)series1.View;
            myView1.PointMarkerOptions.Kind = MarkerKind.Circle;
            myView1.PointMarkerOptions.StarPointCount = 5;
            myView1.PointMarkerOptions.Size = 5;
            myView1.PointMarkerOptions.BorderColor = Color.Lime;//点的颜色

            //创建上下限线条
            XYDiagram diagram = (XYDiagram)pointChart.Diagram;
            diagram.DefaultPane.BackColor = Color.LemonChiffon;//背景颜色
            diagram.AxisY.ConstantLines.Clear();
            ConstantLine constantLine1 = new ConstantLine("上限", 30);
            constantLine1.Color = Color.Black;//直线颜色
            constantLine1.Title.TextColor = Color.Black;//直线文本字体颜色      
            diagram.AxisY.ConstantLines.Add(constantLine1);
            ConstantLine constantLine2 = new ConstantLine("下限", 20);
            constantLine2.Color = Color.Black;
            constantLine2.Title.TextColor = Color.Black;
            diagram.AxisY.ConstantLines.Add(constantLine2);

            //访问图表的特定于类型的选项。
            ((XYDiagram)pointChart.Diagram).EnableAxisXZooming = true;

            //隐藏图例(如有必要)。
            pointChart.Legend.Visible = false;

            //向图表添加标题(如有必要)。
            pointChart.Titles.Add(new ChartTitle());
            pointChart.Titles[0].Text = "数量表";//标题

            //将图表添加到界面。
            pointChart.Dock = DockStyle.Fill;
            this.Controls.Add(pointChart);

            //设置Y轴最小值和最大值,即默认情况下Y轴显示的范围
            AxisRange DIA = (AxisRange)((XYDiagram)pointChart.Diagram).AxisY.Range;
            DIA.SetMinMaxValues(15, 39);
        }
        private void Button1_Click(object sender, EventArgs e)
        {
            System.Diagnostics.Process.Start("https://www.daboke.com");//欢迎访问大博客!
        }

        private void Button2_Click(object sender, EventArgs e)
        {
            System.Diagnostics.Process.Start("https://www.daboke.com/devexpress1");//原文链接!
        }
    }
}
资源下载此资源下载价格为3D币,请先
资源文件列表
lianxi3/App.config , 189
lianxi3/bin/Debug/de/DevExpress.Data.v19.2.resources.dll , 175896
lianxi3/bin/Debug/de/DevExpress.Office.v19.2.Core.resources.dll , 30488
lianxi3/bin/Debug/de/DevExpress.Pdf.v19.2.Core.resources.dll , 15640
lianxi3/bin/Debug/de/DevExpress.Printing.v19.2.Core.resources.dll , 78104
lianxi3/bin/Debug/de/DevExpress.RichEdit.v19.2.Core.resources.dll , 210712
lianxi3/bin/Debug/de/DevExpress.Sparkline.v19.2.Core.resources.dll , 13080
lianxi3/bin/Debug/de/DevExpress.Utils.v19.2.resources.dll , 27416
lianxi3/bin/Debug/de/DevExpress.Utils.v19.2.UI.resources.dll , 54040
lianxi3/bin/Debug/de/DevExpress.XtraBars.v19.2.resources.dll , 45336
lianxi3/bin/Debug/de/DevExpress.XtraCharts.v19.2.resources.dll , 310040
lianxi3/bin/Debug/de/DevExpress.XtraCharts.v19.2.Wizard.resources.dll , 165656
lianxi3/bin/Debug/de/DevExpress.XtraEditors.v19.2.resources.dll , 122648
lianxi3/bin/Debug/de/DevExpress.XtraGrid.v19.2.resources.dll , 44824
lianxi3/bin/Debug/de/DevExpress.XtraLayout.v19.2.resources.dll , 18712
lianxi3/bin/Debug/de/DevExpress.XtraNavBar.v19.2.resources.dll , 12568
lianxi3/bin/Debug/de/DevExpress.XtraPrinting.v19.2.resources.dll , 23832
lianxi3/bin/Debug/de/DevExpress.XtraRichEdit.v19.2.resources.dll , 110872
lianxi3/bin/Debug/de/DevExpress.XtraTreeList.v19.2.resources.dll , 21272
lianxi3/bin/Debug/de/DevExpress.XtraVerticalGrid.v19.2.resources.dll , 14616
lianxi3/bin/Debug/DevExpress.Charts.v19.2.Core.dll , 884504
lianxi3/bin/Debug/DevExpress.Data.v19.2.dll , 7416600
lianxi3/bin/Debug/DevExpress.Data.v19.2.xml , 1377551
lianxi3/bin/Debug/DevExpress.Images.v19.2.dll , 8590104
lianxi3/bin/Debug/DevExpress.Office.v19.2.Core.dll , 2535192
lianxi3/bin/Debug/DevExpress.Office.v19.2.Core.xml , 96683
lianxi3/bin/Debug/DevExpress.Pdf.v19.2.Core.dll , 3001624
lianxi3/bin/Debug/DevExpress.Pdf.v19.2.Core.xml , 337817
lianxi3/bin/Debug/DevExpress.Printing.v19.2.Core.dll , 4398872
lianxi3/bin/Debug/DevExpress.Printing.v19.2.Core.xml , 1572863
lianxi3/bin/Debug/DevExpress.RichEdit.v19.2.Core.dll , 9008408
lianxi3/bin/Debug/DevExpress.RichEdit.v19.2.Core.xml , 2121935
lianxi3/bin/Debug/DevExpress.Sparkline.v19.2.Core.dll , 91928
lianxi3/bin/Debug/DevExpress.Sparkline.v19.2.Core.xml , 26605
lianxi3/bin/Debug/DevExpress.Utils.v19.2.dll , 17098008
lianxi3/bin/Debug/DevExpress.Utils.v19.2.UI.dll , 367896
lianxi3/bin/Debug/DevExpress.Utils.v19.2.UI.xml , 8510
lianxi3/bin/Debug/DevExpress.Utils.v19.2.xml , 1076796
lianxi3/bin/Debug/DevExpress.XtraBars.v19.2.dll , 6740248
lianxi3/bin/Debug/DevExpress.XtraBars.v19.2.xml , 2420345
lianxi3/bin/Debug/DevExpress.XtraCharts.v19.2.dll , 4923672
lianxi3/bin/Debug/DevExpress.XtraCharts.v19.2.UI.dll , 312600
lianxi3/bin/Debug/DevExpress.XtraCharts.v19.2.UI.xml , 73897
lianxi3/bin/Debug/DevExpress.XtraCharts.v19.2.Wizard.dll , 7479576
lianxi3/bin/Debug/DevExpress.XtraCharts.v19.2.Wizard.xml , 853284
lianxi3/bin/Debug/DevExpress.XtraCharts.v19.2.xml , 1721118
lianxi3/bin/Debug/DevExpress.XtraEditors.v19.2.dll , 6962456
lianxi3/bin/Debug/DevExpress.XtraEditors.v19.2.xml , 2279115
lianxi3/bin/Debug/DevExpress.XtraGrid.v19.2.dll , 3505432
lianxi3/bin/Debug/DevExpress.XtraGrid.v19.2.xml , 1508740
lianxi3/bin/Debug/DevExpress.XtraLayout.v19.2.dll , 2112280
lianxi3/bin/Debug/DevExpress.XtraLayout.v19.2.xml , 367380
lianxi3/bin/Debug/DevExpress.XtraNavBar.v19.2.dll , 449816
lianxi3/bin/Debug/DevExpress.XtraNavBar.v19.2.xml , 173027
lianxi3/bin/Debug/DevExpress.XtraPrinting.v19.2.dll , 1228568
lianxi3/bin/Debug/DevExpress.XtraPrinting.v19.2.xml , 174627
lianxi3/bin/Debug/DevExpress.XtraRichEdit.v19.2.dll , 2106648
lianxi3/bin/Debug/DevExpress.XtraRichEdit.v19.2.xml , 135972
lianxi3/bin/Debug/DevExpress.XtraTreeList.v19.2.dll , 1615128
lianxi3/bin/Debug/DevExpress.XtraTreeList.v19.2.xml , 661653
lianxi3/bin/Debug/DevExpress.XtraVerticalGrid.v19.2.dll , 1118488
lianxi3/bin/Debug/DevExpress.XtraVerticalGrid.v19.2.xml , 391858
lianxi3/bin/Debug/es/DevExpress.Data.v19.2.resources.dll , 171288
lianxi3/bin/Debug/es/DevExpress.Office.v19.2.Core.resources.dll , 31512
lianxi3/bin/Debug/es/DevExpress.Pdf.v19.2.Core.resources.dll , 21272
lianxi3/bin/Debug/es/DevExpress.Printing.v19.2.Core.resources.dll , 80664
lianxi3/bin/Debug/es/DevExpress.RichEdit.v19.2.Core.resources.dll , 218904
lianxi3/bin/Debug/es/DevExpress.Sparkline.v19.2.Core.resources.dll , 15640
lianxi3/bin/Debug/es/DevExpress.Utils.v19.2.resources.dll , 27416
lianxi3/bin/Debug/es/DevExpress.Utils.v19.2.UI.resources.dll , 21272
lianxi3/bin/Debug/es/DevExpress.XtraBars.v19.2.resources.dll , 43288
lianxi3/bin/Debug/es/DevExpress.XtraCharts.v19.2.resources.dll , 341272
lianxi3/bin/Debug/es/DevExpress.XtraCharts.v19.2.Wizard.resources.dll , 168728
lianxi3/bin/Debug/es/DevExpress.XtraEditors.v19.2.resources.dll , 104728
lianxi3/bin/Debug/es/DevExpress.XtraGrid.v19.2.resources.dll , 45848
lianxi3/bin/Debug/es/DevExpress.XtraLayout.v19.2.resources.dll , 18712
lianxi3/bin/Debug/es/DevExpress.XtraNavBar.v19.2.resources.dll , 12568
lianxi3/bin/Debug/es/DevExpress.XtraPrinting.v19.2.resources.dll , 23832
lianxi3/bin/Debug/es/DevExpress.XtraRichEdit.v19.2.resources.dll , 104216
lianxi3/bin/Debug/es/DevExpress.XtraTreeList.v19.2.resources.dll , 21272
lianxi3/bin/Debug/es/DevExpress.XtraVerticalGrid.v19.2.resources.dll , 14104
lianxi3/bin/Debug/ja/DevExpress.Data.v19.2.resources.dll , 175896
lianxi3/bin/Debug/ja/DevExpress.Office.v19.2.Core.resources.dll , 32536
lianxi3/bin/Debug/ja/DevExpress.Pdf.v19.2.Core.resources.dll , 11544
lianxi3/bin/Debug/ja/DevExpress.Printing.v19.2.Core.resources.dll , 73496
lianxi3/bin/Debug/ja/DevExpress.RichEdit.v19.2.Core.resources.dll , 215832
lianxi3/bin/Debug/ja/DevExpress.Sparkline.v19.2.Core.resources.dll , 12056
lianxi3/bin/Debug/ja/DevExpress.Utils.v19.2.resources.dll , 34072
lianxi3/bin/Debug/ja/DevExpress.Utils.v19.2.UI.resources.dll , 19736
lianxi3/bin/Debug/ja/DevExpress.XtraBars.v19.2.resources.dll , 56088
lianxi3/bin/Debug/ja/DevExpress.XtraCharts.v19.2.resources.dll , 315160
lianxi3/bin/Debug/ja/DevExpress.XtraCharts.v19.2.Wizard.resources.dll , 162072
lianxi3/bin/Debug/ja/DevExpress.XtraEditors.v19.2.resources.dll , 126744
lianxi3/bin/Debug/ja/DevExpress.XtraGrid.v19.2.resources.dll , 76056
lianxi3/bin/Debug/ja/DevExpress.XtraLayout.v19.2.resources.dll , 18712
lianxi3/bin/Debug/ja/DevExpress.XtraNavBar.v19.2.resources.dll , 13080
lianxi3/bin/Debug/ja/DevExpress.XtraPrinting.v19.2.resources.dll , 24856
lianxi3/bin/Debug/ja/DevExpress.XtraRichEdit.v19.2.resources.dll , 78104
lianxi3/bin/Debug/ja/DevExpress.XtraTreeList.v19.2.resources.dll , 20248
lianxi3/bin/Debug/ja/DevExpress.XtraVerticalGrid.v19.2.resources.dll , 14104
lianxi3/bin/Debug/lianxi3.exe , 11776
lianxi3/bin/Debug/lianxi3.exe.config , 189
lianxi3/bin/Debug/lianxi3.pdb , 30208
lianxi3/bin/Debug/ru/DevExpress.Data.v19.2.resources.dll , 191256
lianxi3/bin/Debug/ru/DevExpress.Office.v19.2.Core.resources.dll , 35608
lianxi3/bin/Debug/ru/DevExpress.Pdf.v19.2.Core.resources.dll , 27416
lianxi3/bin/Debug/ru/DevExpress.Printing.v19.2.Core.resources.dll , 84248
lianxi3/bin/Debug/ru/DevExpress.RichEdit.v19.2.Core.resources.dll , 241432
lianxi3/bin/Debug/ru/DevExpress.Sparkline.v19.2.Core.resources.dll , 15640
lianxi3/bin/Debug/ru/DevExpress.Utils.v19.2.resources.dll , 30488
lianxi3/bin/Debug/ru/DevExpress.Utils.v19.2.UI.resources.dll , 21272
lianxi3/bin/Debug/ru/DevExpress.XtraBars.v19.2.resources.dll , 76056
lianxi3/bin/Debug/ru/DevExpress.XtraCharts.v19.2.resources.dll , 511768
lianxi3/bin/Debug/ru/DevExpress.XtraCharts.v19.2.Wizard.resources.dll , 205080
lianxi3/bin/Debug/ru/DevExpress.XtraEditors.v19.2.resources.dll , 138520
lianxi3/bin/Debug/ru/DevExpress.XtraGrid.v19.2.resources.dll , 53016
lianxi3/bin/Debug/ru/DevExpress.XtraLayout.v19.2.resources.dll , 20248
lianxi3/bin/Debug/ru/DevExpress.XtraNavBar.v19.2.resources.dll , 12568
lianxi3/bin/Debug/ru/DevExpress.XtraPrinting.v19.2.resources.dll , 25368
lianxi3/bin/Debug/ru/DevExpress.XtraRichEdit.v19.2.resources.dll , 95512
lianxi3/bin/Debug/ru/DevExpress.XtraTreeList.v19.2.resources.dll , 26904
lianxi3/bin/Debug/ru/DevExpress.XtraVerticalGrid.v19.2.resources.dll , 15128
lianxi3/Form1.cs , 4622
lianxi3/Form1.Designer.cs , 4135
lianxi3/Form1.resx , 5817
lianxi3/obj/Debug/DesignTimeResolveAssemblyReferences.cache , 133070
lianxi3/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache , 8135
lianxi3/obj/Debug/lianxi3.csproj.CopyComplete , 0
lianxi3/obj/Debug/lianxi3.csproj.CoreCompileInputs.cache , 42
lianxi3/obj/Debug/lianxi3.csproj.FileListAbsolute.txt , 11820
lianxi3/obj/Debug/lianxi3.csproj.GenerateResource.cache , 1012
lianxi3/obj/Debug/lianxi3.csprojAssemblyReference.cache , 215457
lianxi3/obj/Debug/lianxi3.exe , 11776
lianxi3/obj/Debug/lianxi3.Form1.resources , 180
lianxi3/obj/Debug/lianxi3.pdb , 30208
lianxi3/obj/Debug/lianxi3.Properties.Resources.resources , 180
lianxi3/obj/Debug/pointChart.csproj.CopyComplete , 0
lianxi3/obj/Debug/pointChart.csproj.CoreCompileInputs.cache , 42
lianxi3/obj/Debug/pointChart.csproj.FileListAbsolute.txt , 11832
lianxi3/obj/Debug/pointChart.csproj.GenerateResource.cache , 1012
lianxi3/obj/Debug/pointChart.csprojAssemblyReference.cache , 215457
lianxi3/pointChart.csproj , 5056
lianxi3/Program.cs , 519
lianxi3/Properties/AssemblyInfo.cs , 1306
lianxi3/Properties/licenses.licx , 136
lianxi3/Properties/Resources.Designer.cs , 2827
lianxi3/Properties/Resources.resx , 5612
lianxi3/Properties/Settings.Designer.cs , 1094
lianxi3/Properties/Settings.settings , 249
lianxi3.sln , 1133
没有账号? 忘记密码?

社交账号快速登录