在工程应用中,经常会遇到有选择地显示多条曲线或者波形的问题。比如同时检测10路模拟量输入,但是不需要同时显示10条波形,需要根据用户指定,显示一条或者多条曲线。

在论坛中经常会看到,朋友们通过调用波形图的属性节点,隐藏不需要的曲线来解决这个问题,实际上有更好的解决方法。

下面我以波形图(XY图类似)为例,简要说明一下几种实现的方法。首先看看如何利用波形图显示多条波形曲线。

Picture
波形图共显示了三条曲线,分别是正弦波形(白色)、三角波形(红色)、方波(绿色)。下面我们增加三个复选框,由用户自己选择显示那些波形曲线。

Picture
如何显示其中的部分波形曲线,有多种方法。
一、利用波形控件的属性节点,隐藏不需要显示的部分曲线。
这是比较常见的方法,也是不推荐使用的方法。调用属性节点会导致程序运行缓慢,非必要时不宜频繁使用。

Picture
该方法首先需要选择活动曲线,然后设定该曲线是否可见。

二、通过控制波形数组元素数量,来控制显示波形的数量。
我们知道,波形数组对应多个波形(曲线),波形数组中的每个元素代表一条波形,因此通过控制波形数组,就可以控制显示曲线的数量。

Picture
Picture
这种方法由于改变了曲线的数量,因此也改变了曲线的次序,线形、颜色等会出现问题。如果我们个性化了各个曲线设置,这种方法就不适用了。

三、利用空数组。
这是推荐使用的方法,对波形数组中不需要显示的波形,用空数组替换。因为波形不会显示空数组,间接地实现了波形隐藏的目的。同时也不存在曲线次序改变的问题,因为总的波形曲线数量并没有改变。

Picture
Picture
 





Leave a Reply.