c# 實時曲線圖示例程式碼
阿新 • • 發佈:2020-06-18
示例目的:使用時間器新增曲線圖的點,以達到實時描繪曲線圖的效果。X軸顯示時分,Y軸顯示0-20的隨機數
1. 必須安裝DevExpress控制元件,沒有安裝的朋友可以使用下面的連結下載安裝
https://www.jb51.net/softs/547627.html
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. 開始實現功能
using DevExpress.XtraCharts; using System; using System.Windows.Forms; namespace ChartControl { public partial class Form1 : Form { private const int _pointsCount = 15; //固定保留15個點 private int _hour = 0; private int _minute = 0; private SeriesPointCollection _points; public Form1() { InitializeComponent(); _points = chartControl1.Series[0].Points; } private void timer1_Tick(object sender,EventArgs e) { if (_minute >= 60) { _hour += 1; _minute = 0; } if (_hour == 24) { _hour = 0; } if (_points.Count >= _pointsCount) { _points.RemoveAt(0); } var argument = $"{_hour.ToString().PadLeft(2,'0')}:{_minute.ToString().PadLeft(2,'0')}"; // X軸資料 var value = Math.Round(new Random().NextDouble() * 20,2); // Y軸資料 var seriesPoint = new SeriesPoint(argument,value); _points.Add(seriesPoint); _minute += 1; } } }
5. 啟用計時器,檢視效果
有其他需求可以檢視控制元件屬性進行修改,我在這裡就不詳述了。
例項原始碼連結:https://github.com/Jcanc/ChartControl
以上就是c# 實時曲線圖示例程式碼的詳細內容,更多關於C# 實時曲線圖的資料請關注我們其它相關文章!