我想做类似这个问题的事情:gnuplot:在单个图形中绘制来自多个输入文件的数据。
我想同时绘制目录中的所有文件,而不必显式地写入它们的名称。所有文件的列号均相同。我能做些什么?
这样做plot for [file in *] file u 3:2
是行不通的。
另外,我不希望每个文件都有不同的图例。所有文件中的所有点都应被视为相同,就好像它们都来自单个文件一样。
您可以尝试类似:
a=system('a=`tempfile`;cat *.dat > $a;echo "$a"')
plot a u 3:2
这使用命令行tempfile
命令来创建安全,唯一且可丢弃的临时文件。它将所有数据文件混搭到该文件中。然后,它回显文件的名称,以便gnuplot可以检索它。然后,Gnuplot绘制事物。
担心标题行?试试这个:
a=system('a=`tempfile`;cat *.dat | grep "^\s*[0-9]" > $a;echo "$a"')
正则表达式^\s*[0-9]
将匹配所有以任意数量的空格后跟数字开头的行。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句