QCustomPlot实时动态曲线绘制与数据标注
基于 Qt 的实时图形界面,QCustomPlot 的动态绘图功能挺实用的,是要做那种实时数据显示的应用,像设备监控、串口调试啥的就挺合适。
QCustomPlot 支持多种图表类型,曲线图、散点图、柱状图都能整,还能自定义样式,比如线条颜色、点的形状这些,比较灵活。用起来也不算复杂,只要在.pro
文件里加个库引用就能用了。
你可以封装一个自己的类继承QCustomPlot
,写个addData()
方法,定时往里塞数据,配合QTimer
,数据一来图就动了。像下面这种方式:
QTimer *dataTimer = new QTimer(this);
connect(dataTimer, SIGNAL(timeout()), this, SLOT(addData()));
dataTimer->start(50);
哦对了,数据来源也可以是文件,比如CSV
或者JSON
。用QFile
加QTextStream
一读一解析,挺方便的。不想手动调试时,可以写个randomValue()
函数做模拟输入。
别忘了在你的主窗口里把QCustomPlot
控件放进去,不然图画了半天看不到就尴尬了。,QCustomPlot对做实时图形的需求来说,是个还不错的工具。如果你想要搞点花活,像实时标注、鼠标交互,也都支持。
如果你刚好在做 Qt 图形开发,想找个靠谱又好用的绘图库,不妨试试这个。下面这些资源也值得看看:
如果你正好要画动态曲线,又不想自己造轮子,用 QCustomPlot 就挺合适的,调试方便,扩展性也不错。
下载地址
用户评论