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 Arction.WinForms.Charting;

using Arction.WinForms.Charting.SeriesXY;

namespace WindowsFormsApplication5

{

public partial class Form1 : Form

{

public Form1()

{

InitializeComponent();

}

//画线方法

private void PaintLine()

{

DataBaseOpe ope = new DataBaseOpe();

//禁用属性改变引起的重画,以便更快的渲染

lightningChartUltimate1.BeginUpdate();

//lightningChartUltimate1.Dock = DockStyle.Fill;

//添加点线系列

PointLineSeries pls = new PointLineSeries(lightningChartUltimate1.ViewXY,

lightningChartUltimate1.ViewXY.XAxes[0],

lightningChartUltimate1.ViewXY.YAxes[0]);

//显示点

pls.PointsVisible = false;

SeriesPoint[] aPoints = new SeriesPoint[1000];

for (int iPoint = 0; iPoint < ope.GetXmax() + 1; iPoint++)

{

aPoints[iPoint].X = (double)iPoint;

aPoints[iPoint].Y = ope.GetYvalue(iPoint);

}

//为点线系列分配数据

pls.Points = aPoints;

//将点线系列添加进列表

lightningChartUltimate1.ViewXY.PointLineSeries.Add(pls);

//允许Chart绘图

lightningChartUltimate1.EndUpdate();

}

private void buttonGO_Click(object sender, EventArgs e)

{

DataBaseOpe ope = new DataBaseOpe();

PIDdeal pid = new PIDdeal();

//LightningChart初始化

lightningChartUltimate1.ViewXY.PointLineSeries.Clear();

//数据库初始化:清空数据库

ope.ClearDataBase();

//PID变量初始化

pid.PIDinit();

pid.SetValue = double.Parse(textBoxSetValue.Text);

double p = double.Parse(textBoxKp.Text);

double i = double.Parse(textBoxKi.Text);

double d = double.Parse(textBoxKd.Text);

for(int j = 0;j < 1000;j++)

{

ope.AddData(j, pid.PIDcontrol(pid.SetValue, p, i, d));

}

PaintLine();

}

}

}

当然,要实现上面图中的效果图还需要用到数据库操作和PID算法的C#实现方法这两个关键点,加上一个timer控件还可以实现实时曲线的绘制,我已经实现实时曲线的绘制,但最近还没有时间将两个融合,我会把两个项目都上传,大家可以试一下,稍作改动便可实现实时曲线的绘制。感兴趣的小伙伴可以下载我上传的完整项目文件进行查看,菜鸟之作,还望海涵。

附上资源下载链接(由于刚上传,可能还处于审核状态,若下载出错还望过一会儿再试):

https://download.csdn.net/download/zpkld123/10309584

这儿是想着重向大家介绍一下LightningChart这个控件。

我只是初步接触了这款组件,但其功能之强大令我叹为观止。LightningChart是一款快速、先进的2D和3D图表,支持WPF和WinForms平台,是一款获得了VisualStudio五星好评的.NET组件。

除了我上面用到的最简单的绘制曲线功能外,它还有其他十分强大的功能,如下图所示:

android ichartjs 曲线图,C#中利用LightningChart绘制曲线图表相关推荐

  1. python神奇时钟项目_怎么在Python项目中利用Pygame绘制一个时钟

    怎么在Python项目中利用Pygame绘制一个时钟 发布时间:2020-11-30 14:24:30 来源:亿速云 阅读:54 作者:Leah 怎么在Python项目中利用Pygame绘制一个时钟? ...

  2. 利用Tableau绘制各类图表

    利用Tableau绘制各类图表 Tableau部分 Tableau下载和安装 使用Tableau连接数据源 连接EXCEL数据源 连接CSV数据源 连接PDF数据源 连接MySQL数据源(Deskto ...

  3. 利用Plotly绘制各类图表

    利用Plotly绘制各类图表 Plotly部分 Plotly的安装 检查是否安装成功 利用Plotly绘制第一张图 尝试大量数据的绘制 利用go.Scatter存放数据 调取go.Scatter数据绘 ...

  4. [转载] 在Python中使用Matplotlib绘制常见图表

    参考链接: Python | 使用openpyxl模块在Excel工作表中绘制图表 3 Matplotlib 是一个非常强大的 Python 画图工具,通过绘制线图.散点图.等高线图.条形图.柱状图. ...

  5. C#利用zedgraph绘制曲线

    c#利用zedgraph绘制三通道曲线,并且可以根据通道选项情况有选择地展示数据,同时在曲线绘制好以后利用zedgraph的恢复默认大小功能使得曲线最大程度地展现在图形显示区域内. private v ...

  6. 【Python】利用Python绘制3D图表

    代码 ''' Author: CloudSir Date: 2021-07-28 10:57:47 LastEditTime: 2021-08-04 17:33:07 LastEditors: Clo ...

  7. qt连接mysql绘制曲线图表_Qt绘制曲线

    Qt绘制曲线 引言 应易和仓储系统需求,使运输车在行驶过程与刹车过程中运行得平稳,下位机通过无极变速控制应运而生,而上位机的无极变速参数设置也必不可少.这就用到了Qt的绘制曲线. Qt的图形界面很厉害 ...

  8. 微信小程序canvas绘制曲线图表

    先上图 不能耽误大家时间.由于也是才入手小程序 很多不会代码有点乱 看官些能用就用不能用就看看哈. view代码 <view class="efficacy">< ...

  9. Python中利用Matplotlib绘制多图并合并展示

    有个需求就是利用Matplotlib画几个像模像样的统计图然后合并在一张图中,因为此前很少用这方面的东西,所以折腾了不少时间,今天介绍一下. 1.subplot多合一 其实,利用python 的mat ...

最新文章

  1. 使用git实现免密操作、TortoiseGit实现SSH免密码操作
  2. 如何禁止普通用户通过rsh登陆计算节点
  3. 方法 手写promise_JS探索-手写Promise
  4. HttpURLConnection中connection.getInputStream()报异常FileNotFoundException
  5. 罗格斯的计算机科学,Rutgers的CS「罗格斯大学计算机科学系」
  6. 华为推出鸿蒙超级系统,华为鸿蒙系统正式发布!十个人里竟然只有两个人支持?...
  7. redis rdb aof区别_Redis的持久化机制:RDB和AOF
  8. sha2 替换sha1 时间表
  9. zabbix3.4+grafana5.0.1数据可视化
  10. Linux内核多线程实现方法 —— kthread_create函数【转】
  11. HDMI EDID解读
  12. RedisTemplate和StringRedisTemplate在项目中应用
  13. VS2010 .net4.0 登录QQ 获取QQ空间日志 右键选中直接打开日志 免积分 源码下载
  14. 【锂电池】关于4.2V锂电池充电IC的一些记录
  15. 飞鹅云打印机api接口asp版,asp源码对接飞鹅云小票打印机
  16. 英维克,上市只是一个新的起点
  17. 虚幻C++入门个人笔记(3)——接口、智能指针、动画蓝图、行为树、EQS系统
  18. Mingw + msys编译libmono.so
  19. Key Fact as Pivot: A Two-Stage Model for Low Resource Table-to-Text Generation 论文翻译
  20. Selective Kernel Networks

热门文章

  1. Windows Linux Mac 路由添加删除
  2. java设计模式----简单工厂
  3. 1. max31855 热电偶至输出转换器 分析
  4. Lua 中写 C 扩展库时用到的一些技巧
  5. 卸载各类顽固程序时的六个秘密小技巧
  6. 674. 最长连续递增序列
  7. 京东购物车双11实战
  8. 9-9 原生安装-1
  9. 【毕业答辩】如何做出90分的毕业答辩PPT?
  10. 一级计算机技术,《一级考试大参考》自动化技术、计算机技术.pdf