版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第5章图形控件和图形显示5.1波形Graph控件5.2波形Chart控件5.3XY图形控件5.4强度图形控件5.5数字波形图控件5.6三维图形显示控件本章小结练习与思考
图形是虚拟仪器的重要组成部分,LabVIEW为用户提供了丰富的图形显示功能。
在LabVIEW的图形显示功能中,Graph和Chart是两个基本的概念。Chart是将数据源(例如采集得到的数据)在某一坐标系中实时、逐点地显示出来,它可以反映被测物理量的变化趋势,例如显示一个实时变化的波形或曲线。传统的模拟示波器、波形记录仪就是这样。而Graph则是对已采集数据进行事后处理的结果,它先将被采集数据存放在一个数组之中,然后根据需要组织成所需的图形显示出来,它的缺点是没有实时显示,但是它的表现形式要丰富得多。例如采集了一个波形后,经处理可以显示出其频谱图。现在,数字示波器也可以具备类似Graph的显示功能。
关于Graph和Chart显示图形的区别,我们可以通过以下这个例子清楚地看到,其程序的程序框图和最终显示结果如图5-1所示。在该程序中,用Chart和Graph分别显示了20个随机数产生的曲线,尽管最终显示的结果是一样的,但过程却不同。for循环中的时延设置得较大(这里设为400ms),可以使这一过程更加清楚。图5-1Chart和Graph的比较(a)程序框图;(b)最终显示结果最基本且常用的图形控件如图5-2所示。用户在前面板上单击鼠标右键,在弹出的Controls模板上选择了AllControls模板后,即可从该模板中选择Chart或Graph子模板。
由图5-2可知,Chart方式尽管能实时、直接地显示结果,但其表现形式有限,而Graph方式的表现形式要丰富很多,但这是以牺牲实时为代价的。图5-2Graph子模板5.1波形Graph控件
在默认的情况下,波形Graph控件除了绘图区域外,可见的显示项元素还包括标签(Label)、曲线图例(PlotLegend)、X刻度(XScale)和Y刻度(YScale)等。其基本的显示模式是等时间间隔地显示数据点。
波形Graph控件提供了多个显示项元素,在程序前面板上用鼠标右击Graph控件,在弹出的快捷菜单的VisibleItems选项下即可看到,或在快捷菜单中单击Properties选项,弹出图形属性设置窗体(GraphProperties),在其中查看或进行设置。图5-3所示为Graph控件的主要显示项元素。图5-3Graph控件的主要显示项元素在图5-3中:
刻度图例(ScaleLegend):用来设置坐标刻度的数据格式、类型(普通坐标或对数坐标),坐标轴名称以及刻度栅格的颜色等。
自动缩放(AutoScale):将显示控件根据输入数据的长度和幅值自动调整刻度范围,使曲线完全显示在显示区域内。其中,“锁定自动缩放”按钮按下时,显示控件会及时调整刻度范围,以便完整显示数据曲线。“一次性自动缩放”按钮只在点击时起作用。
游标图例(CursorLegend):可用来设置游标,帮助用户用游标直接从曲线上读取感兴趣的数据。游标图例最左边的文本框中显示的是游标的名称,接下来的两个文本框分别是垂直游标线和水平游标线所在位置的坐标值。游标线可用鼠标拖动,也可以通过鼠标点击“游标移动控制”板上的菱形方向键来移动(注意,此时能否移动游标受“移动控制”按钮决定)。单击“游标外观”按钮,通过弹出的快捷菜单可对游标线的颜色、线型等进行设置。单击“移动方式”按钮可对游标线的移动方式进行设置。
曲线图例(PlotLegend):可用来设置曲线的各种属性,包括线型(实线、虚线、点划线等)、线粗细、颜色以及数据点的形状等。在曲线图例上单击鼠标右键,可弹出快捷菜单,对显示曲线进行各种设置。
图形模板(GraphPalette):可用来对曲线进行操作,包括移动、对感兴趣的区域放大和缩小等。图形模板上有三个按钮,按下最左边标有十字线的按钮,可将操作模式切换为普通模式,此时可以移动游标线;中间的放大镜按钮是缩放按钮,可对图形进行各种形式的放大或缩小,以满足用户观察的需求;右边的手形按钮为平移工具(PanningTool),用于移动可视区域的位置。波形Graph控件可接受多种输入数据的形式,读者可以打开examples\general\graphs\gengraph.llb中的WaveformGraph.vi来仔细研究体会。用波形Graph控件可绘制一条或多条曲线。下面作以详细介绍。
1.绘制一条曲线
当绘制一条曲线时,波形Graph控件可接受两种格式的
数据:
1)一维数组
这种情况下,时间默认为从0开始,数据点之间的时间间隔为1个时间单位。该一维数组的第0个元素对应时刻0,第1个元素对应时刻1,依次类推。这种情况相当于对信号进行周期为1个时间单位的采样,数组中的元素即为采样所得到的结果。
2)簇数据类型
这种情况下,簇中应包含起始时间、采样间隔和采样数据,即相当于对上述情况下的数据再加上起始时间和采样间隔构成簇数据。实际上,第一种情况相当于在这情况下,其起始时间为0,采样间隔为1个时间单位的特例。
图5-4给出了用波形Graph控件绘制一条曲线的例子。本例中由随机数产生器生成100个随机数,然后加入x0和dx,用簇的Bundle函数生成一个簇,该簇的输出加到波形图上显示,图中的x0=20,dx=10:图5-4波形Graph控件绘制一条曲线的例子
2.绘制多条曲线
当绘制多条曲线时,波形Graph控件可接受多种类型的数据,下面介绍三种,其余的可参看有关的文献。
1)二维数组
这时,数组的每一行都可看成是一条曲线的数据,默认的时间起点为0,数据点之间的间隔为1个时间单位。注意,这种数据格式要求每条曲线的数据长度相同。
2)簇数据类型
簇数据由x0和dx以及二维数组构成,两条曲线具有相同的x0和dx。
3)由簇作为元素的二维数组
每个簇元素就是绘制一条曲线时的簇数据类型,它包含x0、dx和代表一条曲线的数据点。这是最通用的一种多曲线数据格式,它允许每条曲线包含不同的时间起点、时间间隔和数据长度。
图5-5给出了用波形Graph控件绘制两条曲线的例子。本例中的两条曲线产生的方法均和上例中的相同,只是时间起点、间隔和数据长度不同。这里将两个簇合并成一个簇数组,并将其输出加到波形图上显示。用同样的方法可将多个波形簇合并成一个簇数组,在波形图上显示多条曲线。图5-5用波形Graph控件绘制两条曲线的例子5.2波形Chart控件
同波形Graph控件一样,在默认的情况下,波形Chart控件除了绘图区域外,可见的显示项元素还包括标签(Label)、曲线图例(PlotLegend)、X刻度(XScale)和Y刻度(YScale)等。波形Chart控件的大部分显示项元素与波形Graph控件的显示项元素是相同的。它所特有的是“数据显示(DigitalDisplay)”,选中它后,在Chart图形的右上角会出现一个数字显示器,这样在画出曲线的同时可以显示当前最新的一个数据值(Y坐标的值)。另外,Chart控件还提供了三种刷新模式(UpdateMode)。右击Chart控件,在弹出的快捷菜单上单击“Properties”,在ChartProperties设置窗体的Appearance页可以看到这三种模式,分别是:
(1) Scroll(滚动模式)。它与纸带式图表记录仪类似。曲线从左到右连续绘制,当新的数据点到达右部边界时,先前的数据点逐次左移。
(2) Scope(示波器模式)。它与示波器类似。曲线从左到右连续绘制,当新的数据点到达右部边界时,清屏刷新,从左边开始新的绘制。它的速度较快。
(3) Sweep(扫描模式)。它与示波器模式的不同在于当新的数据点到达右部边界时,不清屏,而是在最左边出现一条垂直扫描线,以它为分界线,在其左边不断画出新的数据点,将原有曲线逐渐覆盖,如此循环下去。
当绘制单条曲线时,波形Chart控件可接受两种格式的数据,分别是标量数据和数组,这些数据接在原有数据的后面显示。当输入标量数据时,曲线每次向前推进一个点;当输入数组数据时,曲线每次向前推进的点数等于数组的长度。当绘制多条曲线时,波形Chart控件也可接受两种格式的数据:第一种是将每条曲线的一个新数据点打包成簇,然后输入到波形Chart控件中,显示时所有曲线同时推进一个点;第二种是将每条曲线的数据点打包成簇,并将多个这样的簇构成数组,再把数组传送到波形Chart控件中,数组中的元素个数决定了绘制Chart时每次更新数据的长度。
图5-6给出了用波形Chart控件绘制两条曲线的例子。其中5-6(b)图为每秒更新两个点的曲线,5-6(c)图为每秒更新一个点的曲线。图5-6用波形Chart控件绘制两条曲线的例子(a)代码示例;(b)显示结果(每秒更新两个点);(c)显示结果(每秒更新一个点)当绘制多条曲线时,波形Chart控件在默认情况下将这些曲线绘制在同一个坐标系中。如果右键单击波形Chart控件,在弹出的快捷菜单上选中“StackPlots(堆叠曲线)”,则曲线将
绘制在不同的坐标系中,这些坐标系由上到下排列,如图5-7所示。
波形Chart控件有一个缓冲区,用来存放历史数据。加入新数据后,如果总的数据长度超过了缓冲区的大小,则将多出的旧数据舍弃。在波形Chart上的快捷菜单的“ChartHistoryLength…”选项中可以设置缓冲区的大小。图5-7用波形Chart控件堆叠绘制两条曲线5.3XY图形控件
以上介绍的两种波形控件只能描绘样点均匀分布的单值函数变化曲线,因为它们的X轴只是表示时间先后,而且是单调均匀的。要想描绘Y与X的函数关系,就需要用XY图形控件。XY图形就是通常意义上的笛卡尔图形,读者自然会想到,描绘XY图形首先需要两个数组X和Y,分别对应于图形的X轴和Y轴。那么这些数据如何组织呢?可以通过图5-8来说明。examples\general\graph\gengraph.llb中的XYGraph.vi是LabVIEW自带的程序实例。图5-8XYGraph.vi程序框图用XY图形控件同样可以绘制单条曲线和多条曲线。
当用XY绘制单条曲线时,数据可以如下组织:
(1)将曲线上每个点的X和Y坐标构成一个簇,再将该簇组成数组。这样,每个数组元素都由一个X坐标值和一个Y坐标值构成。顺序连接各点,就绘出了该曲线。这对应于图5-8中的(ArrayofPts)SinglePlot。
(2)由X数组和Y数组打包构成一个簇,X轴在上,Y轴在下,把具有相同下标(索引)值的X数组和Y数组中的元素组成一个点的坐标,按顺序连接所有的点,绘出曲线图,这对应于图5-8中的(XandYarrays)SinglePlot。当用XY绘制多条曲线时,数据可以如下组织:
(1)单条曲线中的每个数组就是一条曲线,多个这样的数组就构成了多条曲线。由于在LabVIEW中不能建立元素为数组的数组,因此首先要将每个数组打包成一个簇,再将各个簇构成一个数组,即可绘出多条曲线,对应于图5-8中的(ArrayofPts)MultiPlot。
(2)单条曲线中的每个簇也是一条曲线,将多个这样的簇打包成一个数组,即可绘出多条曲线,对应于图5-8中的(XandYarrays)MultiPlot。
5.4强度图形控件
强度图形控件提供了一种在二维平面上表现三维数据的方法。它与前面介绍的图形控件的主要区别是多了一个坐标轴。强度图形控件能够接受的数据是由数值元素构成的二维数组,数组元素的值在显示区域用不同亮度的颜色块来显示。示例程序及显示结果如图5-9所示。图5-9强度图形控件示例程序及显示结果图5-9中,X坐标值为数组的行序号,Y坐标值为数组的列序号,不同颜色的方块代表了数组颜色的值。在IntensityChart上单击鼠标右键,将弹出快捷菜单,选中TransposeArray(转置数组),则X、Y的坐标值分别变为数组的列、行序号(注意,此时数组本身并不转置)。要清除已有数据,可在快捷菜单上选择DataOperations→ClearChart。
Z轴颜色可以手动设置,也可采用编程的方法设置。这里介绍手动设置的方法。在Z轴刻度的数字上右击,弹出快捷菜单,在MarkerColor选项下是一个颜色拾取器,可在其中选择该刻度所对应的新颜色。在Z轴颜色条上右击,弹出快捷菜单,选择AddMarker可以增加新刻度。然后可用同样的方法为新刻度选择新颜色。将鼠标移到刻度线上,可拖动该刻度线到新的位置。
强度Graph控件和强度Chart控件的用法基本相同,不同之处是强度Graph控件在接到新数据后会清除原有数据,而强度Chart控件会把新数据接续到旧数据的后面。5.5数字波形图控件
数字波形图控件可用来显示多路数字信号。显示前需要对被显示的数据进行处理。例如有8路信号要显示,首先将某一时刻(如0时刻)各路信号的值组成一个8位的二进制数(也可用相应的十进制数表示),最低位为第1路信号的值,最高位为第8路信号的值;然后将下一时刻各路信号的值组成第2个二进制数,依次类推,最后将这些二进制数组成一个数组,作为待显示的数据。接下来要构造一个簇,共有4个参数,分别是x0、deltax、待显示的数据数组和显示位数的设置值(1为显示8位,2为显示16位等)。参看图5-10所示的例子。图5-10数字波形图控件的例子5.6三维图形显示控件
三维图形显示控件包括3DSurface、3DParametricSurface和3DCurve三个模块,它们实际上由一个包含了3DGraph控件的ActiveX容器和相应的图形绘制子VI构成,只要给该子VI提供适当的数据,就可绘出需要的三维图形。下面分别介绍用三个三维图形控件绘制子VI。
1.3DSurface子VI
3DSurface子VI的框图如图5-11所示。图5-113DSurface子VI框图需要输入的数据是xvector、yvector和zmatrix。xvector和yvector都是一维数组,其元素x[i]和y[j]是空间点P在x—y平面上投影点的坐标值,zmatrix是二维数组,其元素值z[i,j]是P点在z轴上的坐标值。换句话说,P点在空间的坐标值为(x[i],y[j],z[i,j])。将所有P点光滑连接就构成了三维曲面。xvector和yvector元素的默认值为0,1,2,…
下面我们给出一个例子,绘制如图5-12所示的一个半球面。图5-12绘制三维半球面示例示例中,用公式结点生成两组半圆线,这两组数据在外层循环的输出隧道上按行组成二维数组,作为zmatrix输入到3DSurface子VI,从而绘出原点在(100,100,0),半径为100的半球面。用鼠标拖动三维图形,可以改变观察角度,同时也可以看到该曲面是由一个个空间点光滑连接而成的。
在三维图形显示控件上单击右键,将弹出快捷菜单,单击“CWGraph3D→特性”选项,弹出CWGraph3D控件的特性设置窗体,可对其特性进行设置。在示例中就将x、y、z的坐标范围分别设为
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 呼吸康复护理中的并发症预防措施
- 护理评估单的疼痛管理应用
- 呼吸系统疾病护理策略
- 护理课件制作中的跨学科融合
- 旅游行业策划师面试技巧与策略
- 快消品行业数据分析案例解析
- 快消品行业出纳工作要求及面试要点
- 快消品行业行政人员面试要点
- 零基础到资深:损耗控制经理求职成功法则
- 基于云计算的智慧城市建设探索
- 乡镇禁毒举报奖惩制度
- 2026年江西赣州市高三一模高考数学试卷试题(含答案详解)
- 2026年安徽工业职业技术学院单招综合素质考试题库及答案详解(全优)
- 2026年安徽新闻出版职业技术学院单招综合素质考试题库及一套答案详解
- 考古发掘与保护技术规范
- 《虚拟商业社会环境》-项目一
- 深度解析(2026)《HGT 3738-2004溶剂型多用途氯丁橡胶胶粘剂》(2026年)深度解析
- 月结正式合同模板(3篇)
- 锂电池设备安装施工方案
- 2026年滁州职业技术学院单招职业适应性测试题库参考答案详解
- 国铁集团安全穿透式管理培训课件
评论
0/150
提交评论