便利なサイト:http://t16web.lanl.gov/Kawano/gnuplot/ #contentsx &br; *設定の保存 [#w4ec19f3] **設定の保存と読み込み [#m4b854a3] -設定を保存するときは、 設定を保存するときは、 save "sample.plt" 読み込むときは、 load "sample.plt" (別に.pltでなくても良い) -コマンドを書き連ねたファイル(例えばgp_hogehoge: **コマンドを書き連ねたファイルの活用 [#u7152185] 例えばgp_hogehoge: set term postscript eps enhanced color set output "hoge.eps" plot sin(x) w l lw 2 lc "orange" )などを作り、 などを作り、 gnuplot < gp_hogehoge とすると図(ここではhoge.eps)ができあがる。 **凡例 [#we05ebfd] *凡例 [#we05ebfd] **boxを付ける [#cc9d7726] set key box **間隔の指定 [#s62c0086] set key spacing 1.5 など。 **目盛 [#mf7861f1] **順番を逆に [#y4bb4b55] 最後に描画するプロットを凡例の最初に持っていく set key invert -目盛の調整 -対数目盛にして1,2,5のところに数字をつける set log y set ytics (1,2,5,10,20,50) *目盛 [#mf7861f1] **間隔の調整 [#e03d8e2a] -nの間隔で目盛 set ytics n -mから始めてnの間隔で目盛 set ytics m,n -mから始めてnの間隔でlまで目盛 set ytics m,n,l -目盛の表示形式の設定 **目盛の表示形式の設定 [#sf1b76fe] set format y "%2.0t{/Symbol \327}10^{%L}" ただし、formatは以下を参照 ||意味|例|表示(_はblank)| |f|小数点表示|%6.3f|__6.00| |e,E|指数表示|%11.4e|_5.0000e+01| |x,X|16進数表示|%x|fffffffb| |o,O| 8進数表示|%o|37777766| tは対数関係。 **プロット [#ec0c9a8c] **ラベルの調整 [#f9dd3c27] 対数目盛にして1,2,5のところに数字をつける set log y set ytics (1,2,5,10,20,50) -2行目を3倍してプロット *データのプロット [#ec0c9a8c] **2行目を3倍してプロット [#h23ff9a1] plot "file.dat" using 1:($2*3.0) など。 **行とカラムの指定 [#sdc8884f] -行番号は0行目 plot "test.dat" us 0:2 splot 'CLDDPTH2008156_6' using ($0/180.0-int($0/180)):($0/180):1 など。 -カラム指定 -あるカラムのみプロット カラムは二行空行をつくることで区切る。 カラム番号は0、1、2、、、、 カラム1だけplotする場合は、 plot "filename" index 1 us 1:3 w l など。 -行とカラムの指定 -間隔を空けてプロット every I:J:K:L:M:N I 行の増分 J データブロックの増分 K プロット開始行 L プロット開始データブロック M プロット終了行 N プロット終了データブロック 以下はその例。 every 2 1行おきにプロットする every ::3 3行目からプロットする every ::3::5 3行目から5行目までをプロットする every ::0::0 最初の行だけをプロットする every 2::::6 最初の7行を1行おきにプロットする every :2 1データブロックおきにプロットする every :::5::8 5から8データブロックをプロットする (http://t16web.lanl.gov/Kawano/gnuplot/datafile2.htmlより) **プロットされる範囲の指定 [#pd92ea93] -x座標が正の点だけプロットする plot 'datafile' using 1:($1>0? $2 : 1/0) (1/0は未定義なのでプロットされない) -3次元プロット用のデータから一部だけ取り出して2次元プロットする plot 'datafile' using 2:($1==x ? $3 : 1/0) (http://kochory.blog120.fc2.com/blog-entry-5.html, http://kochory.blog120.fc2.com/blog-entry-6.htmlより) **色の設定 [#r57c8010] -線や点の色 plot 'hoge.dat' w l lt 1 lc "red" lw 2 など。 デフォルトではltごとに色と線種が決まっていて、0/dotted black、1/red、2/green、3/blue、4/pink、5/light blue、6/brown、7/yellow、8/orange。 -pm3dのとき、カラーバーの色使いを変更する set palette define (値 "色名", ...) -最後に描画するプロットを凡例の最初に持っていく set key invert **塗りつぶした棒グラフ [#we21c65c] plot 'filename' using 1:2:3 w boxes fill pattern 2 lt 3 とすれば、1行目の数値を中心、2行目の数値を高さ、3行目の数値を幅とした棒グラフを書く。 fill patternは塗りつぶしのパターン。ベタ塗りは3。何も設定しなければ塗つぶさない。 -3次元プロット用のデータから一部だけ取り出して2次元プロットする plot 'datafile' using 2:($1==x ? $3 : 1/0) (http://kochory.blog120.fc2.com/blog-entry-5.html, http://kochory.blog120.fc2.com/blog-entry-6.htmlより) **パネルを並べる [#j3be06f0] multiplot と打ってサイズや位置を適当に調整してグラフを足していく set size 0.5,1.0 set origin 0.0,0.0 plot sin(x) set size 0.5,1.0 set origin 0.5,0.0 plot cos(x) など。 ただし、multiplot中にterminalは変えられないので、eps出力する場合はmultiplotに入る前に set term postscript eps set output "hogehoge.eps" などととしておく **文字の表示 [#ff8c473a] -文字を拡大 *余白の調整 [#v29c0edf] tmargin 10 の数値を変えることで余白を調整できる。 tmargin at screen 0.9 などとすると、デフォルトのスクリーンで 横(x)=1 縦(y)=1 としたときの相対的な座標でy=0.9のところに余白の境界が来る。 *文字の表示 [#ff8c473a] **文字を拡大 [#h9a89bdf] グラフを縮小して相対的に文字を大きくする set size 0.5,0.5 か、postscript等のファイルに書き込むときに設定する。 set terminal postscript enhanced "Helvetica" 30 set title "Damping Function" font "Times-Roman,40" set title "Damping Function" font "Times-Roman,40" set xlabel "X-AXIS" font "Helvetica,20" set ylabel "Y-AXIS" font "Times-Italic,32" plot exp(-x) など。 -ギリシア文字を出力 **ギリシア文字を出力 [#p958c2b0] {\Symbol l} : λ {\Symbol f} : φ {\Symbol a} : α {\Symbol b} : β {\Symbol c} : χ {\Symbol d} : δ {\Symbol e} : ε {\Symbol f} : φ {\Symbol g} : γ {\Symbol h} : η {\Symbol i} : ι {\Symbol k} : κ {\Symbol l} : λ {\Symbol m} : μ {\Symbol n} : ν {\Symbol o} : ο {\Symbol p} : π {\Symbol q} : θ {\Symbol r} : ρ {\Symbol s} : σ {\Symbol t} : τ {\Symbol u} : υ {\Symbol w} : ω {\Symbol x} : ξ {\Symbol y} : ψ {\Symbol z} : ζ などと書いておいて、 > set term postscript enhanced などと"enhanced"をつけておく。 **近似曲線を求める [#p174f24d] *近似曲線を求める [#p174f24d] f(x) = a*x + b //式の形を与える fit f(x) 'FileName' via a,b こうすると、aやbにベストフィットの値が入り、誤差まで求めてくれる &br; |