原文: https://lv.qizhen.xyz/data_graph
能够方便的把数据以图形化的方式展现出来,是 LabVIEW 的一大特色。LabVIEW 为此提供了丰富的控件和函数,可以大大简化图形化显示数据的复杂度。LabVIEW 图形控件选板上列出了几十种控件,分别用于显示不同类型的数据。但实际上,真正用于显示的部分,不需要分成那么多种控件,比如,一个图片控件既可以显示显示用直角坐标系表示数据,也可以显示用极坐标系表示的数据。所以,读者们可能已经发现了,这个选板上的很多控件被拖到前面板上时,它还会在 VI 的程序框图上添加一些代码。这些代码是真正用来处理不同类型的数据的,它们把不同类型的数据转换为图形控件可以显示的方式,再使用图形控件把数据绘制出来。
images_2/image74.png
这个选板上的大多数控件用来显示二维图形数据,也有一部分控件可以用来显示三维图形数据。
波形图表和波形图
我们先来看两个最常用的数据曲线显示控件:波形图表和波形图控件。所谓曲线就是一组随时间变化的数值数据,曲线常常也被称作波形。LabVIEW 中最常见的曲线格式是在一个直角坐标系中用 X 轴表示时间,Y 轴表示数据值。
图表与图的区别
在图形控件选板上的波形图(Waveform)和强度图(Intensity),都有对应的图表(Chart)和图(Graph)。图表和图区别在于当图表控件自带一块缓存,历史数据会被保存在缓存中。当图表接收到新的数据时,它不会把原来显示的图形清除,而是在原图形基础上再把新数据添加上。图控件没有缓存,每次接收到新的数据,就会把旧图清除,只显示新的数据。
在实际应用中,图表适合显示低速变化的数据,比如某一程序每秒钟读取并显示一次锅炉的温度数据,这个程序可以使用波形图表控就无需逐点显示数据了。比如,程序在 0.01 秒内采集了 1000 个被测物体的震动信号数据,即便可以在 0.01 秒内逐个画出 1000 个点,人眼也无法看到绘图的过程。这种情况更适合在采集完全部 1000 个数据后,使用波形图控件一次绘制出全部数据。
在 VI 前面板上新加一个波形图表控件,会发现它在程序框图上的数据类型是 DBL 的实数数值类型;在 VI 前面板上新加一个波形图控件提供一个数据;波形图控件则每次接受一组数据,然后全部显示出来。比如下图中的程序,绘制了一条带有噪声的正弦波信号。波形信号被分别传递给了一个波形图表和一个波形图控件,但传递方式有所不同:
images_2/image77.png
运行 VI,会看到波形图表和波形图控件最终显示的数据曲线完全相同。区别在于程序的运行过程中,波形图表控件逐点绘制曲线,波形图控件要等到所有数据集齐后才一次绘制所有数据。
images_2/image78.png
这时候如果再次运行 VI,会发现波形图表上的旧数据并没有被清除,而是在后面继续添加的新数据。如果希望每次程序运行时,都是一个全新的开始,可以在程序中通过波形图表的属性节点,清空它的历史数据,之后再添加数据:
images_2/image79.png
我们也可以使用同样的属性节点在程序运行当中,清除波形图表控件的历史数据,或者为它设置一些初始

本文深入探讨LabVIEW中的波形图表和波形图控件,解释它们在数据可视化中的差异和应用场景。波形图表保留历史数据,适合低速变化的数据,而波形图每次只显示最新数据。此外,文章还介绍了XY图形控件、强度图以及三维图形控件的使用,展示了如何通过这些工具有效地呈现各种类型的数据,包括二维和三维图形,以及时频联合谱图等复杂数据的可视化方法。
最低0.47元/天 解锁文章
6975

被折叠的 条评论
为什么被折叠?



