gnuplot

軸・タイトル・凡例

軸の範囲
set yrange[-10:100]
set xrange[-1.1:1.1]
set trange[-100:100]

set parametric

軸のタイトル
set xlabel '(title)'font "Times New Roman,20"
set xlabel offset (0),(-1)

軸の目盛
set tics font "Times New Roman,15"
logの目盛
set format y "10^{%T}"

まわりの空白
set bmargin 5 (b,l,r,t)

凡例のフォント
set key font"Times New Roman,15"

凡例の位置
set key at first (X),first (Y) (at以下をright などにしてもよい、外側に置くのはoutside)
凡例でtitle column(3)とかすれば3番目の引数が凡例に入る。

Stringsの取り扱い

ギリシャ文字set terminal postscript enhanced して{/Symbol moji}とする。

プロット

先で太さを指定してプロット、ポイントでプロット
'hoge.dat' u 1:2 (w l) (lw 3) (dt 3) (lc rgb "#hoge") (t'hoge') (notitle)
'hoge.dat' u 1:2 (lc rgb "#ff0000") (pt 7) (ps 1.5) (t"hoge")

epsで保存
set terminal postscript enhanced color
set output 'name.eps'

pdfで保存
set terminal pdf enhanced color
set output 'name.pdf'

普通にプロットする
set terminal x11
set output

図の表示中

+ or =で拡大。-で縮小。

その他

線の種類を途中から変更するには、変更するところに改行3つくらい入れてindexで線の種類や色を指定すればよい

for文の使い方
例えば plot for [j=1:3] sin(j*x)
file(n) = sprintf("dataset_%d.dat",n)
splot for [i=1:10] file(i) title sprintf("dataset %d",i)

ファイル名を変数にする時
fnames=system("/bin/ls ./*")
plot for[fn in fnames] sprintf("%s",fn) u 1:2
みたいにすればいい。一行目でワイルドカードを使ったlsの結果fnamesに読み込んで、二行目のfor [fn in fnames]でそのリストに対してfor文を回している。

gif作成
set terminal gif animate delay n optimize size 640,480 #0.001*n sec継続、size サイズ
set output 'hoge.gif'
do for [i=0:N] { #N:繰り返し回数
plot "hoge.dat" index ::i using nantoka #index iで繰り返す
}

シェルの引数を渡すことができる。plot -e "hensu(in gnuplot)='$HENSU(in shell)'" hogehoge.plt

リンク