qcustomplot使用方法
工具/原料
qcustomplot
方法/步骤
1、1.侑喏嵋甲插件的声明QCustomPlot的官方文档里,只介绍了在QTDesigner中prompt插件的方法,如果是使用可视化轻拔吴悃窗口设计界面,这样就足够了。但是,如果用纯代码来设计界面,就麻烦了,针对初学者的文档里,并没有提到怎么new出一个QCustomPlot实体。根据官方文档在图形界面中prompt插件后,编译,查看designer生成的ui_xxxx.h文件,在里面发现了声明方法。下面是我自己在项目里的代码,已测试可行。
2、2.蔡龇呶挞关于bufferQCustomPlot提供的几个example中,几乎都是用这两种给图表喂数据的方法:setData()裘沲谡迹和addData()。在数据比较少,或者是设备性能比较好时,这没什么问题。但是,大数据量、有限资源时,效率真的很让人崩溃。看了QCumstomPlot实现这两个函数的代码。居然,都是先申请一个新的buffer,把旧的buffer里内容和新数据一起拷贝到新buffer!!!而且,buffer是用QMap实现的!所以,就是我们的数据在内存里拷来拷去。读了API文档,它其实提供了另一个接口,而且它在文档里推荐大家使用这个接口!!!看下面代码:
3、3.data()这个调用,返回了指向内部画图buffer的指针!然后,我们就可以在需要的时候,往buffer里面添加数据
4、4.今天有个哥们跟我讲QCustomPlot2.0,这个方法不能用了。正好有空,就翻了一下2.0的代码,找打下面的方法发给他。我也还没试。而且这方法并没有在官方文档中提到。
5、5.直接把mData给拿出来用了,避开了这次赋值。真不知道作者为什么要搞这么复杂。第一个是示例,第二个是要修改qcustomplot.h的
6、6.在qcustomplot.h中加一行
7、7.画图区域的背景色不要问我为什么,我是读代码发现的: