使用gnuplot绘制两个文件的数据图表:一个文件包含x坐标,另一个文件包含y坐标。

19
我有两个文件,一个包含X坐标,另一个包含Y坐标。
是否有一种使用Gnuplot在一个图形中绘制这两个文件的方法? 或者有没有一种将这两个文件逐行连接起来的方法?
谢谢。
2个回答

20

在gnuplot中,没有本地方式可以绘制一个文件的X坐标和另一个文件的Y坐标。

如果您使用类似bash的shell,可以使用以下命令:

paste x_data.dat y_data.dat > xy_data.dat

按行逐一合并文件。如果您想将此命令放入gnuplot脚本中,可以这样做:

plot "<paste x_data.dat y_data.dat"

12

有一种更简单的方法可以直接在gnuplot内完成你所需要的操作。尝试使用以下命令:

plot "< join file1.dat file2.dat" using 1:2 with lines

如果两个文件都只包含一列,则上述命令将它们相互打印。join命令还可以实现涉及不同文件列的算术运算,例如,如果两个文件都有两列,则:
plot "< join file1.dat file2.dat" using 1:($2+$4) with lines

将第一个文件的第一列与第一个和第二个文件的第二列之和绘制在同一张图上。

join命令是GNU核心工具之一。我的Mac默认安装了它们;我猜大多数Linux系统也是这样。如果您使用Windows,请查看GnuWin

来源:gnuplot邮件列表(http://gnuplot.10905.n7.nabble.com/combining-data-from-different-input-files-td3528.html)。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接