从MATLAB导出数据以在gnuplot中使用

时间:2015-08-12 10:49:20

标签: matlab gnuplot

我想从MATLAB导出数据,以便我可以在gnuplot中使用它。例如:

>> a=[1 2 3 4];
>> b=[5 6 7 8];
>> c=[9 10 11];
>> d=[12 13 14];

我想绘制(a,b)和绘图(c,d)。如何在四列中的一个文件中编写所有这些变量以及如何在gnuplot中使用它们?

1 个答案:

答案 0 :(得分:1)

对于相同长度的载体

你可以简单地将矢量放入矩阵中,将转置后的矢量作为列,并以ASCII格式保存矩阵:

out = [a' b' c' d'];
save( 'myfile.txt', 'out', '-ASCII' );

在gnuplot中你用:

绘图
plot 'myfile.txt' u 1:2, '' u 3:4

对于不同长度的载体

在您的示例中,我建议将数据放在单独的文件中,因为数据不相关。如果您仍希望将所有内容都放在一个文件中,则可以使用NaN s填充较小的向量。 Gnuplot不会抱怨文本文件中的NaN。然后你可以像以前一样再次构建矩阵。

c(1,4)=NaN;
d(1,4)=NaN;

对于一般情况,您应该以更聪明的方式进行填充。