1、单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,第,7,章 图形化显示数据,图表和图形,1,引子,LabVIEW,很大的一个优势就是它提供了丰富的数据图形化显示控件,而且使用起来极其方便。,2,本章内容,7.1,波形数据,(Waveform),7.2 Chart,趋势图,7.3 Graph,图表,7.4,三维图形(,3D Graph,),7.5 Picture,图形控件,3,7.1,波形数据,(Waveform),7.1.1,波形数据控件,为了方便地显示波形,,LabVIEW,专门预定义了波形数据类型。它实际上就是按照一定格式预定义的簇,在信号采集,处
2、理和分析过程中经常会用到它。,4,7.1,波形数据,(Waveform),波形数据控件携带的数据包含了时间波形的基本信息,因此可以直接作为,Chart,和,Graph,的输入。横坐标代表时间,纵坐标代表,Y,值,5,7.1,波形数据,(Waveform),7.1.2,波形数据操作函数,虽然波形数据是一种预定义格式的簇,但是必须用专用的波形数据操作函数才能对它进行操作,其中某些操作函数与簇的操作函数非常类似。,波形数据的操作函数位于,Functions Palette,的,Programming-Waveform,子模板下,6,7.1,波形数据,(Waveform),波形数据操作函数举例,7,7
3、2 Chart,趋势图,Chart,可以将新测得的数据添加到曲线的尾端,从而反映实时数据的变化趋势,它主要用来显示实时曲线。,8,7.2 Chart,趋势图,7.2.1,波形趋势图(,Waveform Chart),对于标量数据,,Chart,图表直接将数据添加在曲线的尾端。,9,7.2 Chart,趋势图,对于一维数组数据,它会一次性把一维数组的数据添加在曲线末端,即曲线每次向前推进的点数为数组数据的点数。,10,7.2 Chart,趋势图,若要显示多条标量曲线,只需要用簇的,Bundle,函数将它们绑定在一起作为输入即可。,11,7.2 Chart,趋势图,对于二维数组,缺省情况下是每一
4、列的数据当作一条一维数组曲线。,12,7.2 Chart,趋势图,技巧:,若想将曲线截图,可以通过右击曲线选择,Data Operations-Copy Data,将曲线图复制到剪切板上。,13,7.2 Chart,趋势图,7.2.2,定制,Chart,显示样式,分栏显示多条曲线。,右击,Chart,选择,Stack Plots,14,7.2 Chart,趋势图,7.2.2,定制,Chart,显示样式,设置更新模式,右击,Chart,选择,Advanced-Update Mode,可以设置曲线的更新模式。,Strip Chart,模式:曲线填满显示区后曲线通过左移来更新曲线。,Scope Ch
5、art,模式:曲线填满显示区后直接清空显示区重新开始从左向右增长曲线,在,Sweep Chart,模式:通过一条指示红线从左向右刷新数据,15,7.2 Chart,趋势图,7.2.3,带时间轴的实时曲线,16,7.3 Graph,图表,Graph,和,Chart,的区别在于,Graph,是一次性将现有数据绘图,在绘图之前先自动清空图表,而不会将新数据添加到曲线的尾端。,根据显示方法,,Graph,又分为波形图、,XY,曲线图、强度图、数字时序图和三维图。,17,7.3 Graph,图表,7.3.1,定制,Graph,属性,18,7.3 Graph,图表,右击,Graph,控件可以看到该控件有很
6、多属性可以设置。选择,Visible Items,可以看到关于该控件的很多辅助选项。选择这些选项可以使它们都可见,如下图所示。,19,7.3 Graph,图表,Waveform Graph,7.3.2 Waveform Graph,Waveform Graph,可以有多种数据输入类型:一维数组,二维数组,簇,簇数组,波形数据。它在,Controls Palette,中的位置为,Modern-Graph-Waveform Graph,。,20,7.3 Graph,图表,Waveform Graph,1,、一维数组作为输入,当输入数据为一维数组时,,Waveform Graph,直接将一维数组画成
7、一条曲线,纵坐标为数组元素的值,横坐标为数组索引。,21,7.3 Graph,图表,Waveform Graph,2,、二维数组作为输入,当输入数组为二维数组时,缺省情况下每一行的数据对应一条曲线,即曲线的数目和行数相同。,22,7.3 Graph,图表,Waveform Graph,3,、簇作为输入,簇作为输入时需要指定三个元素:起始位置,x0,、数据点间隔,dx,和数组数据。,23,7.3 Graph,图表,Waveform Graph,4,、簇数组作为输入,一维簇数组也可以直接作为,Graph,的输入,此时相当于,x0,为,0,,,dx,为,1,24,7.3 Graph,图表,Wavef
8、orm Graph,5,、波形数据作为输入,由于波形数据所携带的数据横轴为时间,因此需要将,Waveform Graph,的横轴设为时间轴。,25,7.3 Graph,图表,XY Graph,7.3.3 XY Graph,当我们需要画的曲线是由,(x,y),坐标决定的时候,我们就需要采用,XY Graph,。,其实,Waveform Graph,在一定意义上也是,XY Graph,,但是它的,X,轴必须是等间距的,而且不可控制。,26,7.3 Graph,图表,XY Graph,1,、,XY,两个一维数组绑定为簇作为输入,这是最简的一种情形,,Bundle,函数的输入的第一个数组为,X Arr
9、ay,,第二个数组为,Y Array,。绑定为簇后可以直接输入,也可以将多个簇,Build,为一维数组输入实现多条曲线。,27,7.3 Graph,图表,XY Graph,2,、坐标点簇数组作为输入,该方式将各个点的坐标绑定为簇然后作为簇数组输入,和直接将,XY,数组绑定为簇输入效果一样。但是后者不一定需要,XY,数组的大小一致,它会自动将大的数组裁剪。,28,7.3 Graph,图表,XY Graph,3,、时间作为,X,轴,利用,XY Graph,实现历史曲线,29,7.3 Graph,图表,XY Graph,4,、,Express,XY Graph,Express XY Graph,采用
10、了,LabVIEW,的,Express,技术,将,Express XY Graph,放置在前面板上的同时,在程序框图中会自动添加一个,VI,,它的,XY,轴数据为动态数据类型。,30,7.3 Graph,图表,7.3.4,亮度图,(Intensity Graph&Chart),31,7.3 Graph,图表,7.3.5,数字波形图,(Digital Waveform Graph),32,7.4,三维图形(,3D Graph,),1,、三维曲面图(,3D Surface Graph,),将该控件放置在前面板上的同时,在背面板也会同时出现一个,ActiveX,控件和一个,VI,函数,3D,Surf
11、ace.vi,。,33,7.4,三维图形(,3D Graph,),2,、三维参量曲面图(,3D Parametric Graph,),它需要,3,个轴的数据均为二维数组,分别决定了相对于,x,平面、,y,平面和,z,平面的曲面。,34,7.4,三维图形(,3D Graph,),3,、三维曲线图(,3D Curve Graph,),35,7.5 Picture,图形控件,向,Picture,控件导入图片,36,7.5 Picture,图形控件,利用,Picture,控件画图,37,小试身手,1,.,请说出,Chart,、,Waveform Graph,、,XY Graph,之间的主要区别。,38
12、小试身手,2.,利用随机数发生器仿真一个,0,到,5V,的采样信号,每,200ms,采一个点,利用实时趋势曲线实时显示采样结果。,39,小试身手,3.,在习题,2,的基础上再增加,1,路电压信号采集,此路电压信号的范围为,5,到,10V,。,40,小试身手,4.,利用随机数发生器仿真一个,0,到,5V,的采样信号,每,200ms,采一个点,共采集,50,个点,采集完后一次性显示在,Waveform Graph,上。,41,小试身手,5.,在习题,4,的基础上再增加,1,路电压信号采集,此路电压信号的范围为,5,到,10V,,采样间隔是,50ms,,共采,100,个点。采样完成后,将两路采样信号显示在同一个,Waveform Graph,中。,42,小试身手,6.,将习题,5,中的,X,轴改为时间轴显示,要求时间轴能真实的反映采样时间。分析为什么与习题,5,的显示结果截然不同?,43,小试身手,7.,利用,Signal Processing-Signal Generation-Sine,Pattern.vi,(如右上图所示)产生两条正弦曲线,将两条曲线分别作为,XY Graph,的,XY,输入。通过改变其中一条曲线的频率和相位来研究李萨如图形。,44,






