本帖最后由 jinyi7016 于 2022-8-31 14:56 编辑
@21小跑堂
上次使用的是静态的graph,需要调用控件前有完整的数据。
但是在实际项目中,大多数情况下,数据是随着时间而增加的,这就要求曲线图表要实时动态的进行显示。
所以,就有了本篇的动态graph。
动态graph的增加,与上一篇中的静态graph的添加是一样的,参数、外观的配置也是一样的。
不同的是,动态graph可以配置曲线增加显示的动画方式。
如上图,三种方式分别为:
Wrap and Clear:显示满后,全清,重新显示
Scroll:向右滚动显示
Wrap and OverWrite:覆盖显示
在代码中增加数据的方法:
可以看到,这里增加数据时,只需要数据,而不用坐标轴的位置。X轴会自动进行增加的。
定时器
为应用动态graph控件,显示出控件中数据的动态增加,需要一个定时器来增加数据。
而thouchgfx有一个类似于滴答定时器的函数,handleTickEvent()。这个定时器的调用频率60HZ
要使用这个定时器,首先,要进行定义。
在Screen2View.hpp中声明这个函数。
同样的,在cpp文件中实现这个定时器方法的
这样,在打开Screen2这个界面时,定时器会自动执行。
程序烧写到板子上的运行效果如下:
其他Graph
图表的显示方式,除了有曲线的方式,还有如下图中的几种。
点分布图,面积分布图,柱状图等等。在添加其他的数据元素时,可以进行选择。
显示效果如下:
|