资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,实验五 图形化显示数据图表和图形,5,.1 波形数据(Waveform),5.2 Chart趋势图,5.3 Graph图表,5.4 三维图形(3D Graph),5.5 Picture图形控件,实验五 图形化显示数据图表和图形5.1 波形数据,图形显示对于虚拟仪器面板设计是一个重要的内容。在LabVIEW的图形显示中Graph和Chart是两个基本的概念。,Chart是将数据源(例如采集得到的数据)在某一坐标系中,实时、逐点地显示出来,它可以反映被测物理量的变化趋势,例如显示一个实时变化的波形或曲线。,Graph则是对已采集数据进行事后处理的结果。它先将被采集数据存放在一个数组之中,然后根据需要组织成所需的图形显示出来。它的缺点是没有实时显示,但是它的表现形式要丰富得多。例如采集了一个波形后,经处理可以显示出其频谱。,图形显示对于虚拟仪器面板设计是一个重要的内容。在LabVIE,LabVIEW的Graph子模板中有许多可供选用的控件,Chart,Graph,波形( Waveform ),*,*,XY,*,强度图( Intensity ),*,*,数字图( Digital ),*,三维曲面( 3D Surface ),*,三维参变量( 3D Parametric ),*,三维曲线 (3D Curve),*,LabVIEW的Graph子模板中有许多可供选用的控件Cha,图形控件(Graph)子模板及其控件子模板,图形控件(Graph)子模板及其控件子模板,5,.1 波形数据(Waveform),5.1.1 波形数据控件,为了方便地显示波形,LabVIEW专门预定义了波形数据类型。它实际上就是按照一定格式预定义的簇,在信号采集,处理和分析过程中经常会用到它。,5.1 波形数据(Waveform)5.1.1 波形数据控件,5,.1 波形数据(Waveform),波形数据控件携带的数据包含了时间波形的基本信息,因此可以直接作为Chart和Graph的输入。横坐标代表时间,纵坐标代表Y值,5.1 波形数据(Waveform)波形数据控件携带的数据包,5,.1 波形数据(Waveform),5.1.2 波形数据操作函数,虽然波形数据是一种预定义格式的簇,但是必须用专用的波形数据操作函数才能对它进行操作,其中某些操作函数与簇的操作函数非常类似。,当然并不是只有满足波形数据控件定义的数据格式才能在波形图中显示,其他的数组和簇类型也能在波形图中作为图形显示。,波形数据的操作函数位于函数的Programming-波形子模板下,5.1 波形数据(Waveform)5.1.2 波形数据操作,波形数据控件为控件新式I/O中的波形和数字波形。其中,波形代表一般的波形控件,数字波形专门用于显示0/1数字波形图。,波形数据控件为控件新式I/O中的波形和数字波形。其中,波,将波形数据控件放在前面板后,点击鼠标右键,选择显示项标签,则可以看到该簇控件所有的元素:t0、dt、Y、属性(attributes)。,t0代表波形的起始时间,数据类型为Time Stamp;dt代表波形相邻数据点的时间间隔,单位为秒,数据类型为双精度浮点型;Y代表数据数组,默认为双精度浮点型,可以通过右击数组元素并选择Y数组表示法,选择数组数据类型;属性(attributes)用来携带一些注释信息,用户可自定义数据类型为变量类型。,将波形数据控件放在前面板后,点击鼠标右键,选择显示项标签,,数据控件携带的数据包含了时间波形的基本信息,因此可以作为,Chart和 Graph的输入。,数据控件携带的数据包含了时间波形的基本信息,因此可以作为 C,波函数形数据操作,虽然波形数据是一种预定义格式的簇,但是必须用专用的波形数据操作函数才能对它进行操作,其中某些操作函数与簇的操作函数非常类似。波形数据的操作函数位于函数编程波形模板上,如图所示。,波函数形数据操作虽然波形数据是一种预定义格式的簇,但是必须用,获取波形数据,类似于簇函数中的按名称解除捆绑(,Unbundle By Name)函数,通过该函数可以获得披形数据的各个组成元素。,创建波形,类似于簇函数中的按名称捆绑(Bundle By Name)函数。通过该函数可以将波形数据的各个元素绑定在一起。若Wavefrom端子没有接入,则根据绑定的元素创建一个新的Wavefrom 。若Waveform有输入,则对输入的Wavefrom进行修改。,获取波形数据,设置和获得波形属性,波形的属性格式为,name和value。其中name为字符串,value为Variant数据类型,因此可以将任何类型数据直接接入。第一个函数Set Waveform Attribute可以用来添加或修改波形的属性,第二个函数可以用来获得属性内容。,设置和获得波形属性,波形数据举例,波形数据举例,5,.1 波形数据(Waveform),波形数据操作函数举例,5.1 波形数据(Waveform)波形数据操作函数举例,5.2 Chart趋势图,Chart可以将新测得的数据添加到曲线的尾端,从而反映实时数据的变化趋势,它主要用来显示实时曲线。,5.2 Chart趋势图Chart可以将新测得的数据添加到曲,波形Chart简介,波形Graph在接收到新数据时,先把已有数据曲线完全消除,然后根据新数据重新绘制整条曲线。 新数据被接续在旧数据的后面。,Chart的数据并没有事先存在一个数组中,它是实时显示的,为了能够看到先前的数据,Chart控件内部含有一个显示缓冲器,其中保留了一些历史数据。这个缓冲器按照先进先出的原则管理,其最大容量是1024个数据点。,波形Chart简介波形Graph在接收到新数据时,先把已有数,5.2 Chart趋势图,5.2.1 波形趋势图(Waveform Chart),对于标量数据,Chart图表直接将数据添加在曲线的尾端。,5.2 Chart趋势图5.2.1 波形趋势图(Wavefo,5.2 Chart趋势图,对于一维数组数据,它会一次性把一维数组的数据添加在曲线末端,即曲线每次向前推进的点数为数组数据的点数。,5.2 Chart趋势图对于一维数组数据,它会一次性把一维数,5.2 Chart趋势图,若要显示多条标量曲线,只需要用簇的Bundle函数将它们绑定在一起作为输入即可。,5.2 Chart趋势图若要显示多条标量曲线,只需要用簇的B,5.2 Chart趋势图,对于二维数组,缺省情况下是每一列的数据当作一条一维数组曲线。,5.2 Chart趋势图对于二维数组,缺省情况下是每一列的数,5.2 Chart趋势图,技巧:,若想将曲线截图,可以通过右击曲线选择数据操作复制数据将曲线图复制到剪切板上。,5.2 Chart趋势图技巧:,5.2 Chart趋势图,5.2.2 定制Chart显示样式,分栏显示多条曲线。,右击Chart选择,Stack Plots,5.2 Chart趋势图5.2.2 定制Chart显示样式右,5.2 Chart趋势图,5.2.2 定制Chart显示样式,设置更新模式,右击Chart选择高级-刷新模式 可以设置曲线的更新模式。,Strip Chart模式:曲线填满显示区后曲线通过左移来更新曲线。,Scope Chart模式:曲线填满显示区后直接清空显示区重新开始从左向右增长曲线,在Sweep Chart模式:通过一条指示红线从左向右刷新数据,堆叠式图区(Stack Plots),在相同的纵坐标下,由于各种测量信号的差异,将几条曲线显示在同一个图区有困难时,可以组织出一种纵坐标相同,而有各自横坐标的堆叠式图区。,5.2 Chart趋势图5.2.2 定制Chart显示样式,5.2 Chart趋势图,5.2.3 带时间轴的实时曲线,5.2 Chart趋势图5.2.3 带时间轴的实时曲线,练习1 波形Chart数据显示,练习1 波形Chart数据显示,波形Chart数据显示中用到的部分功能函数,波形Chart数据显示中用到的部分功能函数,波形Chart数据显示前面板,波形Chart数据显示前面板,Chart的独有控件,滚动条(Scrollbar),它直接对应于显示缓冲器,通过它可以前后观察缓冲器内任何位置的数据。,数据显示(Digital Display),选中它,可以在图形右上角出现一个数字显示器,这样可以在画出曲线的同时显示当前最新的一个数据值。,Chart的独有控件滚动条(Scrollbar),5.3 Graph图表,Graph和Chart的区别在于Graph是一次性将现有数据绘图,在绘图之前先自动清空图表,而不会将新数据添加到曲线的尾端。,根据显示方法,Graph又分为波形图、XY曲线图、强度图、数字时序图和三维,图。,5.3 Graph图表Graph和Chart的区别在于Gra,5.3 Graph图表,5.3.1 定制Graph属性,5.3 Graph图表5.3.1 定制Graph属性,5.3 Graph图表,右击Graph控件可以看到该控件有很多属性可以设置。选择Visible Items可以看到关于该控件的很多辅助选项。选择这些选项可以使它们都可见,如下图所示。,5.3 Graph图表右击Graph控件可以看到该控件有很多,曲线图例可用来设置曲线的各种属性,包括线型(实线、虚线、点划线等)、线粗细、颜色以及数据点的形状等。,图形工具选板可用来对曲线进行操作,包括移动、对感兴趣的区域放大和缩小等。,游标图例可用来设置光标、移动光标,帮助你用光标直接从曲线上读取感兴趣的数据。,标尺图例用来设置坐标刻度的数据格式、类型(普通坐标或对数坐标),坐标轴名称以及刻度栅格的颜色等。,曲线图例可用来设置曲线的各种属性,包括线型(实线、虚线、点划,5.3 Graph图表Waveform Graph,5.3.2 Waveform Graph,Waveform Graph可以有多种数据输入类型:一维数组,二维数组,簇,簇数组,波形数据。它在Controls Palette中的位置为Modern-Graph-Waveform Graph。,5.3 Graph图表Waveform Graph5.3,5.3 Graph图表Waveform Graph,1、一维数组作为输入,当输入数据为一维数组时,Waveform Graph直接将一维数组画成一条曲线,纵坐标为数组元素的值,横坐标为数组索引。,5.3 Graph图表Waveform Graph1、一,5.3 Graph图表Waveform Graph,2、二维数组作为输入,当输入数组为二维数组时,缺省情况下每一行的数据对应一条曲线,即曲线的数目和行数相同。,5.3 Graph图表Waveform Graph2、二,5.3 Graph图表Waveform Graph,3、簇作为输入,簇作为输入时需要指定三个元素:起始位置x0、数据点间隔dx和数组数据。,5.3 Graph图表Waveform Graph3、簇,5.3 Graph图表Waveform Graph,4、簇数组作为输入,一维簇数组也可以直接作为Graph的输入,此时相当于x0为0,dx为1,5.3 Graph图表Waveform Graph4、簇,5.3 Graph图表Waveform Graph,5、波形数据作为输入,由于波形数据所携带的数据横轴为时间,因此需要将Waveform Graph的横轴设为时间轴。,5.3 Graph图表Waveform Graph5、波,波形Graph的数据格式,波形Graph的数据格式,实验五图形化显示数据课件,实验五图形化显示数据课件,使用波形Graph显示波形数据类型数据,使用波形Graph显示波形数据类型数据,正弦和方波波型,正弦和方波波型,增加偏移量输入后的正弦和方波波型,增加偏移量输入后的正弦和方波波型,练习2 波形Graph数据显示,练习2 波形Graph数据显示,波形Graph数据显示的前面板,波形Graph数据显示的前面板,设定波形Graph的属性,在波形Graph上弹出快捷菜单,可以配置Graph的一些基本属性。,栅格(Grid)和小栅格(Mini-grid);,刻度图例(Scale Legend),游标(Cursor),Graph模板(Graph Palette),曲线图例(Plot Legend),设定波形Graph的属性 在波形Graph上弹出快捷菜单,练习3 Chart和Graph的比较,创建一个VI,用Chart和Graph分别显示40个随机数产生的曲线,比较程序的差别,练习3 Chart和Graph的比较,显示的运行结果是一样的。但实现方法和过程不同。在流程图中可以看出,Chart产生在循环内,每得到一个数据点,就立刻显示一个。而Graph在循环之外,40个数都产生之后,跳出循环,然后一次显示出整个数据曲线。从运行过程可以清楚地看到这一点。,值得注意的还有For循环执行40次,产生的40个数据存储在一个数组中,这个数组创建于For循环的边界上(使用自动索引功能)。在For循环结束之后,该数组就将被传送到外面的Graph。仔细看流程图,穿过循环边界的连线在内、外两侧粗细不同,内侧表示浮点数,外侧表示数组。,显示的运行结果是一样的。但实现方法和过程不同。在流程图中可以,5.3 Graph图表XY Graph,5.3.3 XY Graph,当我们需要画的曲线是由(x, y)坐标决定的时候,我们就需要采用XY Graph。,其实Waveform Graph在一定意义上也是XY Graph,但是它的X轴必须是等间距的,而且不可控制。,5.3 Graph图表XY Graph5.3.3 XY,练习4 利用XY Graph构成利萨育图形,如果控制X、Y方向的两个数组分别按正弦规律变化(假设其幅值、频率都相同),如果它们的相位相同,则利萨育图形是一条45度的斜线,当它们之间相位差90度时为圆,其他相位差是椭圆。,练习4 利用XY Graph构成利萨育图形 如果控制X、Y,5.3 Graph图表XY Graph,1、XY两个一维数组绑定为簇作为输入,这是最简的一种情形,Bundle函数的输入的第一个数组为X Array,第二个数组为Y Array。绑定为簇后可以直接输入,也可以将多个簇Build为一维数组输入实现多条曲线。,5.3 Graph图表XY Graph1、XY两个一维数,5.3 Graph图表XY Graph,2、坐标点簇数组作为输入,该方式将各个点的坐标绑定为簇然后作为簇数组输入,和直接将XY数组绑定为簇输入效果一样。但是后者不一定需要XY数组的大小一致,它会自动将大的数组裁剪。,5.3 Graph图表XY Graph2、坐标点簇数组作,5.3 Graph图表XY Graph,3、时间作为X轴利用XY Graph实现历史曲线,5.3 Graph图表XY Graph3、时间作为X轴,5.3 Graph图表XY Graph,4、Express XY Graph,Express XY Graph采用了LabVIEW的Express技术,将Express XY Graph放置在前面板上的同时,在程序框图中会自动添加一个VI,它的XY轴数据为动态数据类型。,5.3 Graph图表XY Graph4、Express,强度图形控件提供了一种在二维平面上表现三维数据的方法。例如可以用屏幕色彩的亮度来反映来反映一个二维数组元素值的大小。,例如可以用屏幕色彩的亮度来反映来反映一个二维数组元素值的大小。下图就是这样的一个例子。注意图中的x、y轴刻度对应的是数组行、列的序号。,5.3 Graph图表,5.3.4强度图(Intensity Graph & Chart),强度图形控件提供了一种在二维平面上表现三维数据的方法。例如可,5.3 Graph图表,5.3.4强度图(Intensity Graph & Chart),5.3 Graph图表5.3.4强度图(Intensity,强度Chart,和强度Graph,强度Chart,颜色梯度Color,Ramp,颜色梯度Color Ramp,5.3 Graph图表,5.3.5 数字波形图(Digital Waveform Graph),5.3 Graph图表5.3.5 数字波形图(Digital,数字波形图控件(Digital Waveform Graph),数字波形图控件(Digital Waveform Graph,数字波形图控件的例图,数字波形图控件的例图,混和信号图(Mixed Signal Graph),可以将任何波形图、XY图、数字图接受的数据类型连线到混和信号图上。,连线到混和信号图前,需要使用捆绑功能函数连线多个数据类型。,混和信号图(Mixed Signal Graph)可以将任何,混和信号图例子,混和信号图例子,混和信号图例子程序框图,混和信号图例子程序框图,5.4 3D图形显示控件(3D Graph),1.三维曲面(3D Surface.vi),5.4 3D图形显示控件(3D Graph)1.三维曲面(3,5.4 三维图形(3D Graph),2.三维曲面图(3D Surface Graph),将该控件放置在前面板上的同时,在背面板也会同时出现一个ActiveX控件和一个VI函数3D Surface.vi。,5.4 三维图形(3D Graph)2.三维曲面图(3D S,5.4 三维图形(3D Graph),3.三维参量曲面图(3D Parametric Graph),它需要3个轴的数据均为二维数组,分别决定了相对于x平面、y平面和z平面的曲面。,5.4 三维图形(3D Graph)3.三维参量曲面图(3D,5.4 三维图形(3D Graph),4.三维曲线图(3D Curve Graph),5.4 三维图形(3D Graph)4.三维曲线图(3D C,5.5 Picture图形控件,5.向Picture控件导入图片,5.5 Picture图形控件5.向Picture控件导入图,5.5 Picture图形控件,6.利用Picture控件画图,5.5 Picture图形控件6.利用Picture控件画图,练习,1.请说出Chart、Waveform Graph、XY Graph之间的主要区别。,2. 利用随机数发生器仿真一个0到5V的采样信号,每200ms采一个点,利用实时趋势曲线实时显示采样结果。,练习1.请说出Chart、Waveform Graph、XY,3. 在习题2的基础上再,增加1路电压信号采集,,此路电压信号的范围为,5到10V。,4.利用随机数发生器仿真一个0,到5V的采样信号,每200ms采,一个点,共采集50个点,采集,完后一次性显示在Waveform,Graph上。,3. 在习题2的基础上再,5. 在习题4的基础上再增,加1路电压信号采集,此,路电压信号的范围为5到,10V,采样间隔是50ms,,共采100个点。采样完成,后,将两路采样信号显示,在同一个Waveform Graph中。,6. 将习题5中的X轴改为时间轴显示,要求时间轴能真实的反映采样时间。分析为什么与习题5的显示结果截然不同?,5. 在习题4的基础上再增,7. 利用Signal Processing-Signal Generation-Sine Pattern.vi(如右上图所示)产生两条正弦曲线,将两条曲线分别作为XY Graph的XY输入。通过改变其中一条曲线的频率和相位来研究李萨如图形。,7. 利用Signal Processing-Signal,
展开阅读全文