Arrays Labview-增加数组索引并限制数组大小

Arrays Labview-增加数组索引并限制数组大小,arrays,labview,Arrays,Labview,我正在使用labview XY线图,它使用随机数生成器生成y值,使用while循环计数生成x值。当达到阈值x值(比如1000)时,我希望能够遍历过去的1000个值,并且仅每10个值显示一次(这具有消除绘图混乱的效果)。理想情况下,实现这一点的方法可以扩展为更高的阈值,以便绘图具有以下格式: 每1000个值,步长为10 每10000个值,步长为100 每100000步,步长为1000 等等 下面是我一直在使用的代码,以及VI的图片。我的问题是,有没有更好的方法来实现这种效果,而不必像我目前所做的那

我正在使用labview XY线图,它使用随机数生成器生成y值,使用while循环计数生成x值。当达到阈值x值(比如1000)时,我希望能够遍历过去的1000个值,并且仅每10个值显示一次(这具有消除绘图混乱的效果)。理想情况下,实现这一点的方法可以扩展为更高的阈值,以便绘图具有以下格式:

每1000个值,步长为10

每10000个值,步长为100

每100000步,步长为1000

等等

下面是我一直在使用的代码,以及VI的图片。我的问题是,有没有更好的方法来实现这种效果,而不必像我目前所做的那样(在for循环中)从数组中删除值

代码

虚拟仪器


您所指的是所谓的“抽取”(我认为这里是字面意思,因为您将其分解为10秒)。LabVIEW中有一个用于抽取阵列的函数,可以找到有关该函数的更多信息

这看起来像是一个简化版本,您正在尝试使用decimate VI执行的操作

有可配置的抽取VIs,可从信号操作调色板使用,可使用抽取因子进行抽取,请参阅或从第三方软件包进行抽取。MGI的一个调色板上有一个称为MGI带偏移量的抽取数组。您可以将上述代码中的抽取函数替换为其中任何一个函数,并根据传入数组的大小更改抽取因子

编辑:@JonathanVahala询问有关使用以下可配置抽取的问题。请参见此图,其中显示了执行此操作的方法:


您可以用这个案例结构来替换案例结构,以这种方式进行毁灭。

谢谢,这非常有帮助@JonathanVahala如果有帮助,请投票表决。@JonathanVahala很高兴这有帮助!另请注意:我不确定这个应用程序是什么,但您应该知道,“构建阵列”功能对于构建大型阵列可能效率低下。最好将数组初始化为您期望的大小(或稍大一点),然后在生成时替换每个元素。谢谢您的建议。如果你不介意的话,请跟进。。。我想随着数组大小的增加(数组大小1000,因子10…数组大小10000,因子100…等等)应用因子递增的抽取。我正在努力研究如何在适当的阈值下应用每个抽取函数。我本来打算单独跟踪数组大小,并在应用抽取后重置为0,以便在1000个数据点后再次执行操作。但是,这对于超过1000的任何对象都不起作用,因为数组大小将在达到更高的阈值之前重置。那么在绘图中省略的中间数据呢?你会需要它吗?还是可以删除它?我想在数组中保留它,但在显示方面,它可以删除