labview,如何取出二维数组的每一列,并且用这两列数据分别作为一个波形图的x坐标和y坐标,绘制成波形图

如题所述

第1个回答  2013-09-23

看图,就这么简单。用“XY图”控件。

最左面的二维数组常量代表你的只有两列的那个二维数组。

(一共就两列,就别说“每一列”了,只会起到误导别人的作用。)

追问

谢谢你,我是初学者,不太明白~
你中间使用的是数组中的哪个函数?我的版本是2010,我没有找到你使用的这个函数~能告诉我名称吗?
另外还有一个问题,我的X坐标是绝对时间,用你给的方法,可以实现吗?

追答

那是索引数组,0连接到了“列”那一端,所以根据列索引,行索引被自动禁用(行接线端旁的小方块变成空心)。
X坐标是绝对时间也没问题,在控件属性窗口设置一下XY图控件的X轴显示方式即可。下拉,选下面的绝对时间,或者自己选择高级模式,用格式字符串设置。

追问

太感谢了~我又试了一下,捆绑簇和xy图输入端的接线还是会报错。我的二维数组,实际上是tdms文件的输出端,一列是数值,一列是每个数值对应的绝对时间。二者的数据类型都是字符串类型,我想应该是数据类型不对,导致的接线报错吧。您知道怎么解决这个数据类型转换的问题吗?我不知道怎么把1-D数组字符串转换成符合要求的数值。另外,有一列数据,是时间日期的字符串,就更不知道该怎么办了。您能帮我解决这个问题吗?

追答

    tdms文件里面可以原样保存数据,你存成字符串干什么?你要当纯文本文件用?你不嫌麻烦和损失精度,就再按照存之前的步骤,反序转换回来呗。 

    正式回答一下你的两个问号:1 知道。 2 能。 

    如果想知道具体怎么做,你倒是先把有用的信息提供出来啊!比如你存入tdms文件之前怎么转成的字符串的程序框图截图。

追问

谢谢,这是存储部分的框图,希望再把数据从tdms文件中读取出来,时间作为横轴,幅值作为纵轴。

谢谢,这是存储部分的框图,希望再把数据从tdms文件中读取出来,时间作为横轴,幅值作为纵轴。

追答

两张图有区别吗?我不太擅长玩找茬。


你们把双精度数和时间标识分别格式化成字符串再存入tdms文件,这是完全多余的。

你直接存波形数据类型不就完了吗。既有Y数组,又有t0、dt。你看看什么叫波形数据类型。

你如果非要把那样存的数据读取并显示出来,参考一下我的程序截图吧。

别继续问了,你的程序从根上就要扔掉重做的。

本回答被提问者采纳
相似回答