4つの数値(最小、最大、平均、標準導出)を含むファイルがあり、gnuplotでプロットしたいと思います。
サンプル:
24 31 29.0909 2.57451
12 31 27.2727 5.24129
14 31 26.1818 5.04197
22 31 27.7273 3.13603
22 31 28.1818 2.88627
1つの列を持つ4つのファイルがある場合、次のことができます。
gnuplot "file1.txt" with lines, "file2.txt" with lines, "file3.txt" with lines, "file4.txt" with lines
そして、4つの曲線をプロットします。私はx軸を気にしません、それはただ一定の増分であるべきです。
どうすればプロットできますか? x値が絶えず増分するだけで、4列の1ファイルで4つの曲線を作成する方法を見つけることができないようです。
ありがとうございました。
次のように、同じファイルの異なる列をプロットできます。
plot 'file' using 0:1 with lines, '' using 0:2 with lines ...
(...
は継続を意味します)。この表記に関する注意事項:using
は、プロットする列を指定します。つまり、最初のusing
ステートメントの列0と1、0番目の列は、現在の行番号に変換される擬似列ですデータファイル。 using
で使用される引数が1つだけの場合(例:using n
)それはusing 0:n
(指摘してくれてありがとうmgilson)。
Gnuplotのバージョンが十分に新しい場合、forループを使用して4つの列すべてをプロットできます。
set key outside
plot for [col=1:4] 'file' using 0:col with lines
結果:
Gnuplotは、データファイル内にある場合、タイトルに列見出しを使用できます。例:
min max mean std
24 31 29.0909 2.57451
12 31 27.2727 5.24129
14 31 26.1818 5.04197
22 31 27.7273 3.13603
22 31 28.1818 2.88627
そして
set key outside
plot for [col=1:4] 'file' using 0:col with lines title columnheader
結果:
追加するだけで、forループの増分を3番目の引数として指定できます。 n番目の列ごとにプロットする場合に便利です。
plot for [col=START:END:INC] 'file' using col with lines
この場合、とにかく変更するだけです:
plot for [col=1:4:1] 'file' using col with lines