便利なサイト: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;

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS