当前位置:网站首页>LabVIEW运行中改变Chart的历史长度
LabVIEW运行中改变Chart的历史长度
2022-07-23 08:02:00 【LabVIEW开发】
LabVIEW运行中改变Chart的历史长度
怎么能够在程序运行的时候改变Chart的历史长度?
解答:
实际上是没有办法在程序运行的时候改变Chart的历史长度的,这是因为LabVIEW会在程序运行之前已经根据Chart的历史长度分配好所需内存,所以程序运行后是无法增加所分配的内存数量的。然而,可以设定希望在前面板看到的数据的历史长度。只要知道历史长度的中的最大点数,那么可以设置想看到历史数据的点数。
在WaveformChart的属性节点中有一个叫X Scale » Scale Markers[]的属性可以用来设定要显示的Chart的X轴的点数。在程序运行的时候,只要把一个包含所要显示的点数的数组赋给这个属性节点,就可以改变显示的Chart的历史长度或者点数。例如,如果当前显示的点数是从0到5000,但是只想显示最近的100个历史数据点,那么可以将数组[4901, 4902, ... , 5000]赋给Waveform Chart的属性节点X Scale » Scale Markers[],此时这个数组的最小值和最大值就定义了Chart显示的点数的边界,因此即使有新的数据进入到Chart,也只会显示最近的100个点,直到该数组的值被更新。
请注意:这样做只会改变显示在前面板Chart中的数据,并不会改变保存在Chart数据缓冲区中的数据。如果想获得更详细的信息,请参考附件中的VI。
在LabVIEW中,应该分别在什么情况下使用波形图和波形图表?这两种控件的数据显示方式有什么区别?应该使用哪一个控件来查看数据的历史记录?
解决方案
波形图和波形图表在显示和更新数据的方式上有所不同。
波形图可接受各种类型的数据阵列,例如数组,波形或动态数据。波形图在接收到数据后将立即绘制所有接收到的数据点。波形图不接受单点值。当将包含数据点的数组连接到波形图时,波形图会假定数据点之间的间距相等。默认情况下,初始的X轴取值以及步长(t0和dt)分别为0和1,该初始值可以在波形图的属性中更改,也可以使用属性节点对其进行更改。
波形数据类型在本质上是一个包含t0和dt信息的数据点数组。在这种情况下,波形图接收波形中包含的t0和dt取值,并根据t0和dt取值相应地显示数据。可以使用自行指定的数据点、t0和dt来构建自定义的波形。还可以通过将二维的波形数组或动态数据连接到波形图以在同一波形图上显示多个图形。
波形图表将一定数量的数据点存储在缓冲区,并通过这种方式存储并显示这些数据点。当缓冲区被填满后,波形图表将会用新的数据点覆盖缓冲区中存在时间最久的数据点。当数据点可用时,波形图表将显示已有的数据点外加最新接收到的数据点。可以一次写入单个或多个数据点。如果将一个数组连接到图表,它会将该数组中的数据点附加到现有数据点之后。通过将一个包含数据点的簇或是一个包含波形或动态数据的二维数组连接至波形图表,可以在同一图表中显示多个图形。例如,如果连入了一个包含3个数据点的簇,波形图表将为显示的3个图形各添加一个点。下面的程序框图说明了波形图与波形图表功能上的差异:
在上面的For循环中,自动索引被用于生成包含100个随机值的数组,该数组随后被传递给一个波形图。而在下面的For循环中,100次循环的每次迭代过程都会将一个新的随机值传递给波形图表。

编辑
添加图片注释,不超过 140 字(可选)
两个循环都会产生相同的输出结果,不同之处在于波形图只在获取到所有数据后进行一次更新,而波形图表则是在程序运行的过程中不断更新。
相关信息
可以通过右键单击波形图表并从快捷菜单中选择“图表历史长度”选项来设置图表历史记录缓冲区的长度(波形图表能够存储和显示的数据点数)。
也可以通过编程的方式更改图表历史记录长度或图表缓冲区大小。
若需要在两种控件之间进行切换,可以右键单击波形图控件或波形图表控件,选择替换选项,然后从控件选板中选择对应的控件,如下图所示:
LabVIEW、LabVIEW开发、LabVIEW编程、LabVIEW程序
上文中提到的例子和资料,均在word中的附件里,可点击下载。进一步了解,可联系们。
LabVIEW运行中改变Chart的历史长度 - 北京瀚文网星科技有限公司 (bjcyck.com)
边栏推荐
- 达人评测酷睿i7 12850hx和i7 12700h选哪个
- Fabric.js 基础笔刷
- OSPF detailed explanation (LSA) (2)
- OSPF综合实验
- js 实现通过身份证获取年龄
- Swift hex string to uicolor
- Head products generated 2.5 billion yuan, and SLG track was also targeted by black products
- Script type=module
- Best practices of JD cloud Distributed Link Tracking in financial scenarios
- MySQL enables scheduled task execution
猜你喜欢

数据库连接池 & DBUtils

赛扬n5095处理器怎么样 英特尔n5095核显相当于什么水平

Pbootcms数据库转换教程(sqlite转mysql详细教程)

OSPF comprehensive experiment

Comment creo 9.0 modifie - t - il rapidement le système de coordonnées Cao?

Which is the difference between iqoo 10 pro and vivo X80 pro? Detailed parameter configuration comparison

Where does pytorch work?

第四天笔记

Sampling and data driven

机器学习入门难?说说我是如何快速开始机器学习入门的!
随机推荐
酷睿i5 12490f和i5 12600k差距大吗
Golang remote server debugging
OSPF综合实验
天玑820相当于骁龙多少处理器 天玑1100相当于骁龙多少 天玑820怎么样
fastadmin更改默认表格按钮的弹窗大小
Fabric.js 基础笔刷
How many processors is Tianji 720 equivalent to Xiaolong? How about Tianji 720 equivalent to Xiaolong
数据库连接池 & DBUtils
将我理解的web3.0讲给你听
js 实现通过身份证获取年龄
How about the performance of Intel Celeron 7305? What level is it equivalent to
Notes on the sixth day
Uiscrollview (uicollectionview) prohibits horizontal and vertical sliding at the same time
200 lines of code, in-depth analysis of the principle and implementation of dynamic calculation diagram
机器学习入门难?说说我是如何快速开始机器学习入门的!
Day108. Shang Yitong: interface docking of hospital simulation system - query of hospital | Department | shift scheduling, addition, deletion, modification and paging conditions
PyTorch到底好用在哪里?
Notes on the fifth day
考研题库小程序中如何实现打开考研思维导图pdf
Pbootcms数据库转换教程(sqlite转mysql详细教程)