2011-12-29 10 views
0

のver私はちょうど私がすなわちmultiplotの例いくつかの種類、同時に多くのファイルをプロットするには(thisの質問を参照)以前の投稿スクリプトを使用する方法を疑問に思って...gnuplotの+ bashスクリプト - 2

私はこのmultiplotの性質を知っている、より良いでこれを交換したいと思います:

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, ...を置き換え、最後に1つのプロットを取得する必要があります。

誰かが私にいくつか多かれ少なかれ良いアルゴリズムを提案することができますか、これのために何か?

+0

「multiplotプロパティ」とは何ですか? – fge

+0

Multiplotはお互いにプロットしているだけです。p 'INPUTFILE-1.data' u 1:2 wlとp 'INPUTFILE-2.data' u 1:2 wl、... etc主なポイントは、すべてのINPUTFILE-1、INPUTFILE-2、...を同時に置き換えてください。 – user1116360

+0

申し訳ありませんが、私はまだ理解しません。 'set multiplot'行はどのように次の行に影響しますか? – fge

答えて

0
n=0 
substitutions= 
for i in $(<data.list) 
do substitutions+="s:\(INPUTFILE-$((++n))\|OUTPUTFILE\):$i:;" 
done 
<plot.gnu sed "$substitutions" | gnuplot 

出力とタイトルには、最初の入力ファイルの名前が付けられます。