C#能做实时曲线的第三方控件,数据量很大,能够实现labview的效果

2024-11-16 15:00:45
推荐回答(3个)
回答1:

NI 是很牛了,产品自然不会差。想问下你的数据量是有多大?每秒还要刷几次?

本人用过以下几个曲线显示方法:

  1.  自己绘制图形,不过是C++的,一个面板显示8组振动波形,长度1024,刷新频率1Hz,显示完全没问题。C#执行起来总感觉慢一拍且你那要求高,不建议自绘图形。

  2. C#自带的chart控件。当数据长度小于4096,一个面板上显示4个图形也不算卡,若是数据长度超过1万了就有点卡了。刷新频率1Hz。

  3. 比C#的Chart控件更好的是TChart控件。网上有相关的dll,直接在VS工具箱中添加引用即可。这个控件算是很经典了。控件自身的容错处理能力比C#自带的Chart控件强,也更稳定。本人试验过。

  4. 以上控件还满足不了你的高要求那就直接用 Labview的控件吧。

    下载个measurement studio安装,在Visual studio工具箱中直接采用Labview的众多完美控件吧。控件倒是不错,但可能增加不必要的麻烦,引入NI控件之后VS响应会变慢,可能还会涉及到产品注册和发布的问题。


楼主去试试吧。

回答2:

利用自带的chart画过每秒刷新8次的实时曲线,并没有卡顿。你卡顿的原因是不是实时刷新放在UI线程中了?

回答3:

可以试下芬兰Arction开发商开发的 LightningChart 图表控件,可以实现大量数据的直观显示,好像可以达到20亿个数据点的实时呈现,不卡顿,绘制出的图表还蛮酷炫的。