我只是想知道如何在同时绘制多个文件时使用之前发布的脚本(请参阅this问题),即某种多重案例......
我想用一个更好的替换它,它知道这个多时间属性:
for i in `cat ./data.list`
do
cat ./plot.gnu | sed "s:\(INPUTFILE\|OUTPUTFILE\):$i:g" | gnuplot
done
plot.gnu与以前几乎相同,但我们需要以某种方式以适当的方式修改它,同时考虑到多时隙要求:
set term postscript enhanced color
set output 'OUTPUTFILE.eps'
set title 'OUTPUTFILE'
set multiplot layout 2,2
p 'INPUTFILE-1.data' u 1:2 w l
p 'INPUTFILE-2.data' u 1:2 w l
p 'INPUTFILE-3.data' u 1:2 w l
p 'INPUTFILE-4.data' u 1:2 w l
unset multiplot
data.list文件包含4个不同的文件,因此INPUTFILE-1.data, INPUTFILE-2.data, ...
必须由它们替换,最后得到一个图。
任何人都可以建议我一些或多或少的好算法,或者其他什么?
答案 0 :(得分:0)
n=0
substitutions=
for i in $(<data.list)
do substitutions+="s:\(INPUTFILE-$((++n))\|OUTPUTFILE\):$i:;"
done
<plot.gnu sed "$substitutions" | gnuplot
请注意,输出和标题将以第一个输入文件命名。