gnuplot / intro / plotexp
gnuplot 入門 — 実験データ編まずはデータファイルの準備 ファイルに書かれた実験データをプロットし,そこに解析解を重ねて表示 # Data No. 1 2.1500E-02 1.3060E+00 5.3098E-02 2.3900E-02 1.2220E+00 4.7043E-02 2.6800E-02 1.3430E+00 4.9854E-02 2.9700E-02 1.2580E+00 4.5860E-02 3.2500E-02 1.2430E+00 4.4506E-02 .... 9.4500E-01 1.2290E+00 3.7317E-02 1.0350E+00 1.2630E+00 4.1449E-02 1.1330E+00 1.2670E+00 4.2289E-02 # Data No. 2 2.4000E-02 1.2970E+00 3.1387E-02 4.0000E-02 1.3060E+00 2.8993E-02 6.0000E-02 1.2960E+00 2.8382E-02 8.0000E-02 1.3300E+00 2.8728E-02 .... 7.0000E+00 1.2210E+00 2.5031E-02 7.2000E+00 1.1990E+00 2.5299E-02 7.4000E+00 1.1860E+00 2.5618E-02 # Data No.3 2.2500E-02 1.3310E+00 3.4606E-02 2.7500E-02 1.3370E+00 2.4066E-02 3.5000E-02 1.3440E+00 2.6880E-02 .... 1.8936E+01 1.0080E+00 2.9232E-02 2.0064E+01 9.6300E-01 2.9853E-02 2.1296E+01 1.0310E+00 3.1961E-02 データの組をプロット この3組のデータを最小自乗法で直線近似すると,y = -0.01687 x + 誤差付きのデータをプロットするには,with yerrorbarsを使います. gnuplot> plot "plotexp.dat" index 0:0 using 1:2:3 with yerrorbars, > "plotexp.dat" index 1:1 using 1:2:3 with yerrorbars, > "plotexp.dat" index 2:2 using 1:2:3 with yerrorbars ![]() 入力行が長いときは,(¥記号,もしくはバックスラッシュ)を行末にい 凡例をつける 図の凡例が恰好悪いので,各データに表題を付けてみましょう. gnuplot> plot "plotexp.dat" ind 0:0 usi 1:2:3 ti "A. Smith (1992)" w yerr, > "plotexp.dat" ind 1:1 usi 1:2:3 ti "B. Smith (1993)" w yerr, > "plotexp.dat" ind 2:2 usi 1:2:3 ti "C. Smith (1999)" w yerr ![]() 計算値を重ねる 関数を重ねてプロットするには,始めに関数を定義しておくのが便利です. gnuplot> f(x)= -0.01687*x + 1.3512 gnuplot> plot f(x) with lines, > "plotexp.dat" ind 0:0 usi 1:2:3 ti "A. Smith (1992)" w yerr, > "plotexp.dat" ind 1:1 usi 1:2:3 ti "B. Smith (1993)" w yerr, > "plotexp.dat" ind 2:2 usi 1:2:3 ti "C. Smith (1999)" w yerr ![]() 直線を一番始めにいれたので,データ表示に使われる線種が一つずれ 線種を変える ウィンドウに表示するには,色が変わっている方が見やすいのですが,こ ![]() これでは困るので,線種は実線のままで記号だけを変えるようにします. gnuplot> set linestyle 1 lt 1 lw 3 gnuplot> set linestyle 2 lt 1 pt 7 gnuplot> set linestyle 3 lt 1 pt 8 gnuplot> set linestyle 4 lt 1 pt 9 [3.8/4.0] Ver.3.8以降のgnuplotの場合は,以下のように指定します. gnuplot> set style line 1 lt 1 lw 3 gnuplot> set style line 2 lt 1 pt 7 gnuplot> set style line 3 lt 1 pt 8 gnuplot> set style line 4 lt 1 pt 9 linestyleの1番として,線幅を3の実線を定義してます.次の2〜4では線 gnuplot> f(x)= -0.01687*x + 1.3512 gnuplot> plot f(x) notitle with lines linestyle 1, > "plotexp.dat" ind 0:0 usi 1:2:3 ti "A. Smith (1992)" w yerr linestyle 2, > "plotexp.dat" ind 1:1 usi 1:2:3 ti "B. Smith (1993)" w yerr linestyle 3, > "plotexp.dat" ind 2:2 usi 1:2:3 ti "C. Smith (1999)" w yerr linestyle 4 ![]() 軸名を入れる 直線の凡例は,notitleを使って消してしまいました.データ表示に関す 図にXとY軸の名前を入れます.X軸は “Energy [MeV]” としましょう.ま gnuplot> set xlabel "Energy [MeV]" gnuplot> set ylabel "Cross Section [b]" gnuplot> replot ![]() 表示範囲を調節する 今度は,X軸とY軸の範囲を変更します.Y軸の範囲を[0,2]にしましょう. gnuplot> set xrange [0.01:20] gnuplot> set yrange [0:2] gnuplot> set logscale x gnuplot> replot ![]() 目盛を入れる 最後に目盛を変えてみます.対数軸であるX軸はこのままで良いでしょう. gnuplot> set ytics 1 gnuplot> set mytics 10 gnuplot> set grid gnuplot> replot ![]() Postscriptで出力する これで完成です.結果をPostScriptにして,印刷してみましょう. gnuplot> set term postscript gnuplot> set output "plotexp.ps" gnuplot> replot gnuplot> save "plotexp.plt" gnuplot> quit 出来上がったoutput.psをPostScriptプリンタに送れば,印刷できます. ![]() 縮小しているので見えにくいとは思いますが,7番の記号は●,8番は△,
|