2017-10-11 77 views
0

我有包含两列的数字的文本文件。在for循环中,我将第一列和第二列分别存储为X(n)Y(n)(作为浮点数),n是迭代数。 假设我不知道我有多少个文件,而且数据的长度/范围是可变的。MATALAB中plot()的动态输入数据

有没有一种方法来创造一种动态可变的,所以我可以用它作为输入以图形方式表示像

plot(dynamic_variable) 

而不是每个手写数据

plot(X1,Y1,X2,Y2,...,XN,YN) 

我知道应该有内插数据(因为文件具有不相同的长度/范围)的可能性,因此可以创建两个矩阵,让说XMYM,最后写(XM,YM),其中

XM = [X1_intrpl X2_intrpl ... XN_intrpl] 
YM = [Y1_intrpl Y2_intrpl ... YN_intrpl]. 

有没有更直接的方法呢?

我不是一个专家:所以我也希望对我的想法/方法发表任何评论和/或批评。

回答

0

一种选择将被读取的每组X(n)和y(n)的成单元阵列,使得

X{1} = X1 
Y{1} = Y1 
... 
X{N} = XN 
Y{N} = YN 

然后绘制,而不是试图一切合并成一个单一的阵列,您可以简单地将每组X和Y分别绘制到同一个图上。

%Instead of: 
%plot(X1,Y1,X2,Y2,...,XN,YN) 
%Use: 
figure() 
hold on 
for i=1:N 
    plot(X{i},Y{i}) 
end