labview簇数据合成簇分解数组

简介: (1)添加1个簇控件:控件选板→新式→数值→数组、矩阵与簇一簇,标签为“簇”将1个数值显示控件、1个圆形指示灯控件、1个字符串显示控件放入簇框架中。(2)添加1个旋钮控件:控件选板→新式-→数值→旋钮,标签为“旋钮”。(3)添加1个开关控件:控件选板→新式→布尔-→翘板开关,标签为“布尔”。(4)添加1个字符串输入控件:控件选板→新式→字符串与路径-→字符串输入控件,标签为“字符串”。

例1.将一些基本数据类型的数据元素合成一个簇数据。

前面板

(1)添加1个簇控件:控件选板→新式→数值→数组、矩阵与簇一簇,标签为“簇”

将1个数值显示控件、1个圆形指示灯控件、1个字符串显示控件放入簇框架中。

(2)添加1个旋钮控件:控件选板→新式-→数值→旋钮,标签为“旋钮”。

(3)添加1个开关控件:控件选板→新式→布尔-→翘板开关,标签为“布尔”。

(4)添加1个字符串输入控件:控件选板→新式→字符串与路径-→字符串输入控件,标签为“字符串”。

设计的程序前面板如图5-1所示。

754158b6b640cbaac66a4d446b0279e.png

框图程序

(1)添加1个捆绑函数:函数选板→编程→簇与变体→捆绑。

将捆绑函数节点的输入端口设置为3个(选中图标,向下拖动图标边框即可)。

捆绑函数的输入端口数量也是可以任意增/减的。

(2)将旋钮控件、开关控件、字符串输入控件分别与捆绑函数的3个输入端口相连。

(3)将捆绑函数的输出端口输出簇与簇控件相连。

连线后的框图程序如图5-2所示。

9466397c6c3e533bc30555e670e7a9e.png

运行程序

执行“连续运行”。转到按钮,单击布尔开关,输入字符串,在簇数据中显示变化结果。在簇数据中转到旋钮、改变数值大小、单击布尔开关、输入字符串,旋钮输出值、布尔输出值、字符串输出值发生同样变化。

程序运行界面如图5-3所示。

922a3c5abbf54dbf59e82de9bcb015d.png


例2.将一个簇中的每个数据成员进行分解,并将分解后的数据成员作为函数的结果输出。

前面板

(1)添加1个簇控件:控件选板→新式→数值→数组、矩阵与簇→簇,标签为“簇"

将1个旋钮控件、1个数值输入控件、1个布尔开关控件、1个字符串输入控件放入簇框架中。

(2)添加2个数值显示控件:控件选板→新式→数值→数值显示控件,标签分别改为“旋钮输出”“数值输出”。

(3)添加1个指示灯控件:控件选板- +新式→布尔→圆形指示灯,标签为“布尔输出”。

(4)添加1个字符串输出控件:控件选板-→新式字符串与路径- >字符串输出控件,标签为“字符串”。

设计的程序前面板如图5-4所示。

e76877cc88994eb5ab826f1d3ba55be.png

框图程序

(1)添加1个解除捆绑函数:函数选板→编程→簇与变体→解除捆绑。

(2)将簇控件与解除捆绑函数的输入端口簇相连。

(3)将解除捆绑函数的输出端口旋钮、数值、布尔、字符串分别与旋钮输出控件、数值输出控件、布尔输出控件、字符串输出控件相连。

连线后的框图程序如图5-5所示。

cf0ef2a9a90814597ad0e8133279b3e.png

运行程序

执行“连续运行”。在簇数据中转到旋钮、改变数值大小、单击布尔开关、输入字符串,旋钮输出值、布尔输出值、字符串输出值发生同样变化。

程序运行界面如图5-6所示。

b31c5cffe2c70575a9c4682095ebb4d.png


例3. 按照元素的名称替换掉原有簇中相应数据类型的数据,并合成一个新的簇的对象。

前面板

(1)添加1个簇控件:控件选板-→新式-→数组、矩阵与簇→簇,标签为“簇”。

将1个数值输入控件、1个字符串输入控件放入簇框架中。

(2)再添加1个簇控件:控件选板-→新式→数组、矩阵与簇→簇,标签为“输出簇”。

将1个数值显示控件、1个字符串显示控件放入簇框架中。

(3)添加1个数值输入控件:控件选板→新式→数值-→数值输入控件,标签为“替换数值”。

(4)添加1个字符串输入控件:控件选板→新式→字符串与路径→字符串输入控件,标签为“替换字符串”。

设计的程序前面板如图5-7所示。

26531f7d45f272f2bee3f9ce40ac703.png

框图程序

(1)添加1个按名称捆绑函数:函数选板→编程-→簇与变体→按名称捆绑。

(2)将簇控件与按名称捆绑函数的输入端口簇相连。

(3)将按名称捆绑函数的输入端口设置为2个。可以看到函数出现“数值”和“字符串”输入端口。

(4)将替换数值输入控件与按名称捆绑函数的输入端口数值相连;将替换字符串输入控件与按名称捆绑函数的输入端口字符串相连

(5)将名称捆绑函数的输出端口输出簇与输出簇控件相连。

连线后的框图程序如图5-8所示。

8c2ea1117d06612952270d795790cf2.png

运行程序

执行“连续运行”。在簇数据中改变数值大小,输入1个字符串;改变替换数值大小,在替换字符串中输入另一个字符串,输出簇中数值和字符串发生相应变化(被替换)。

程序运行界面如图5-9所示。

02ef2230b7f993106a45c2b91515d4b.png


例4.按照簇中所包含的数据的名称将簇分解成组成簇的各个元素。

前面板

(1)添加1个簇控件:控件选板→新式→数组、矩阵与簇→簇,标签为“簇”。

将1个数值输入控件、1个指示灯控件、1个字符串输入控件放入簇框架中。

(2)添加1个数值显示控件:控件选板→新式→数值→数值显示控件,标签改为“数值输出”。

(3)添加1个指示灯控件:控件选板→新式→布尔-→圆形指示灯,标签改为“布尔输出”。

(4)添加1个字符串输出控件:控件选板→新式→字符串与路径→字符串输出控件,标签改为“字符串输出”。

设计的程序前面板如图5-10所示。

586122fbf6bbcc4eb93355567a04a21.png

框图程序

(1)添加1个按名称解除捆绑函数:函数选板→编程-→簇与变体→按名称解除捆绑。

(2)将簇控件与按名称解除捆绑函数的输入端口输入簇相连。

本例将按名称解除捆绑函数的输出端口设置为3个,以显示数值、布尔、字符串输出端口。

(3)将按名称解除捆绑函数的输出端口数值、布尔、字符串分别与数值输出控件、布尔输出控件、字符串输出控件相连。

连线后的框图程序如图5-11所示。

c2a167bcb1591322318761bf3b91e8a.png

运行程序

执行“连续运行”。在簇数据中改变数值大小、单击布尔指示灯、输入字符串,数值输出值、布尔输出值、字符串输出值发生同样的变化。

程序运行界面如图5-12所示。

8fda1afddc6250bd0c8d9a9315febda.png


例5.将输入的多个簇数据转换为以簇为元素的数组数据,并作为该函数的输出。

前面板

(1)添加1个簇控件:控件选板→新式→数组、矩阵与簇→簇,标签为“簇”。

将1个数值输入控件、1个按钮灯控件、1个字符串输入控件放入簇框架中。

(2)添加1个数组控件:控件选板→新式→数组、矩阵与簇-→数组,标签为“簇数组”。

将1个簇控件放入数组框架中,再将1个数值显示控件、1个指示灯控件和1个

字符串显示控件放入簇框架中(如果是输入控件,单击右键转换为显示控件)。

将数组成员数量设置为2列。

设计的程序前面板如图5-13所示。

ae369c9625d83fc162ac73c33f90124.png

框图程序

(1)添加1个创建簇数组函数:函数选板→编程→簇与变体→创建簇数组,将输入端口设置为2个。

(2)添加1个簇常量:函数选板→编程-→簇与变体→簇常量。

往簇常量中添加1个数值常量(值为0)、1个布尔常量和1个字符串常量(值为

LabVIEW)。

(3)将簇控件与创建数组的输入端口组件元素相连。

(4)将簇常量与创建簇数组的输入端口组件元素相连。

(5)将创建簇数组的输出端口簇数组与簇数组控件相连。

连线后的框图程序如图5-14所示。

2d176cc9ff94571ad3daafb949a7126.png

运行程序

执行“连续运行”。本例中,前面板中的簇数据与框图程序中的簇常量构成一个簇数组。

程序运行界面如图5-15所示。

2d035dafa9d20d11e0676c1b6067ced.png


例6.从输入的多个一维数组中依次取值,按照索引值重新构成一个新的簇数组,构成簇数组的长度和最小的一维数组的长度相同。

前面板

添加1个数组控件:控件选板→新式→数组、矩阵与簇-→ 数组,标签为“数组”。

将1个簇控件放入数组框架中,再将1个数值显示控件和1个字符串显示控件放入簇框架中。将数组成员数量设置为4列。

设计的程序前面板如图5-16所示。

40fc40d6189a5b88185039e9bda0e2a.png

框图程序

(1)添加1个索引与捆绑簇数组函数:函数选板→编程→簇与变体→索引与捆绑簇数组,将输入端口设置为2个。

(2)添加1个数组常量:函数选板→编程→数组→数组常量。向数组常量中添加数值常量,将列数设置为4,输入数值1、2、3、4。

(3))添加1个数组常量:函数选板→编程→数组→数组常量。向数组常量中添加字符串常量,将列数设置为4,输入数值a、b、c、d。

(4)将数值数组、字符串数组分别与索引与捆绑簇数组函数的输入端口组件数组相连。

(5)将索引与捆绑簇数组函数的输出端口簇数组与数值控件相连。

连线后的框图程序如图5-17所示。

94166f4c0278290db2c7ed45ec21dc1.png

运行程序

执行“连续运行”。本例数组中有4个簇数据,其中数值从数组常量中依次取值1、2、3、4;字符串从字符串数组常量中依次取值a、b、c、d。

程序运行界面如图5-18所示。

94e71c50ba21b1a729e26129d462cf1.png


相关文章
|
8月前
【代数学作业5】理想的分解:高斯整数环中理想的结构,并根据其范数和素数的性质进行分解
【代数学作业5】理想的分解:高斯整数环中理想的结构,并根据其范数和素数的性质进行分解
111 0
|
机器学习/深度学习 算法 数据可视化
浅析特征数据离散化的几种方法(上)
什么是离散化? 离散化就是把无限空间中有限的个体映射到有限的空间中去,以此提高算法的时空效率。通俗的说,离散化是在不改变数据相对大小的条件下,对数据进行相应的缩小。例如:
|
16天前
|
机器学习/深度学习 数据可视化 数据挖掘
基于Copula分布的合成数据采样:保持多维数据依赖结构的高效建模方法
本文深入探讨了Copula的基础理论、运作机制及其在数据科学领域的应用。Copula作为一种数学框架,能够将随机变量间的依赖关系与其边际分布分离,特别适用于处理非线性依赖关系或异质分布变量。文章通过年龄与收入的关系分析,展示了Copula在多元分析中的独特优势,并介绍了高斯Copula的具体应用实例。此外,还详细讲解了Copula在合成数据生成中的应用,验证了合成数据在训练机器学习模型时的有效性。
76 18
|
5月前
|
C++ 容器
C++离散与组合数学之多重集合
从离散数学和组合数学的角度来看,多重集合在计算组合数、处理计数问题等方面的应用是丰富多样的。在C++中通过 `std::multiset`实现多重集合管理,可以高效地解决实际中那些涉及计数和组合的问题。在C++标准库的支持下,多重集合的使用和操作简单直观,同时也在性能上得到了充分的保证。
30 3
|
8月前
|
算法 数据可视化
R语言中的模拟过程和离散化:泊松过程和维纳过程
R语言中的模拟过程和离散化:泊松过程和维纳过程
|
8月前
|
算法 定位技术
插值、平稳假设、本征假设、变异函数、基台、块金、克里格、线性无偏最优…地学计算概念及公式推导
插值、平稳假设、本征假设、变异函数、基台、块金、克里格、线性无偏最优…地学计算概念及公式推导
179 2
|
机器学习/深度学习 数据可视化 算法
时间序列分解 | Matlab SGMD辛几何模态分解数据分解可视化,信号数据分解
时间序列分解 | Matlab SGMD辛几何模态分解数据分解可视化,信号数据分解
|
机器学习/深度学习 数据采集
区间预测 | MATLAB实现基于QRCNN-BiGRU卷积双向门控循环单元多变量时间序列区间预测
区间预测 | MATLAB实现基于QRCNN-BiGRU卷积双向门控循环单元多变量时间序列区间预测
|
算法
【模型预测控制MPC】使用离散、连续、线性或非线性模型对预测控制进行建模(Matlab代码实现)
【模型预测控制MPC】使用离散、连续、线性或非线性模型对预测控制进行建模(Matlab代码实现)
632 0
|
数据可视化
利用ggcor包绘制相关性组合图及环状热图
ggcor包最初是因为能快速实现19年Science一组合相关性图(上图所示)变得流行起来,除此该包对热图、热图等等的可视化都是很方便快捷的,除了之前介绍过的几种相关性图几种方式,此包也是个不错的选择,且具独特的风格(特别是组合相关性图、环形热图)。但是不知道因为何种原因此包在Github上消失了....,到作者(厚缊)个人博客上瞅了瞅发现关于包的参数介绍示例等也都没有了,在评论区里看到作者回答项目已不再提供任何代码和任何资料,需要的可以去国内的gitee和国外的github搜索看看有没有别人存的代码。
734 0