いちからはじめる GMT その3 - psxy -J / -B /

2008年 9月 1日 掲載


今回もデータをプロットするコマンド psxy を使ってみる.


今回は正弦曲線(サインカーブ)を描いてみる. データファイル sin.txt を awk で作ろう.

$ awk 'BEGIN{for(x=0;x<=13;x+=0.1)print x, sin(x)}' > sin.txt

で 0≦x≦13,Δx=0.1 の正弦曲線データファイル sin.txt ができる.

さっそく描画してみる.x の範囲は (0, 4π) とした.

$ psxy sin.txt -R0/12.5660/-1/1 -Jx1 -Bg1a1 > sin.eps

正弦曲線

横に細長い図ができた. 縦横の縮尺を変えたいときは,-Jオプションで / を使う. / の前後に x軸,y軸の縮尺をそれぞれ指定する.

$ psxy sin.txt -R0/12.5660/-1/1 -Jx1/4 -Bg1a1 > sin.eps

正弦曲線

-Jx1/4 とすることで,x軸の縮尺が 1倍,y軸の縮尺が 4倍になる.

図の縦横比はこれでいいのだが,グリッド・目盛の間隔が, 正弦曲線の山・谷とずれていて格好がわるい. x軸の間隔はπ/2 などのπの分数にしたい. が,y軸の間隔は 1/2 などの 1 の分数にしたい.

-Bオプションでも / の前後に x軸,y軸別々の指定ができる. x軸のグリッド間隔を π/2,x軸の目盛間隔を π, y軸のグリッド・目盛間隔を 0.5 にそれぞれ変更してみる.

$ psxy sin.txt -R0/12.5660/-1/1 -Jx1/4 -Bg1.57075a3.1415/g0.5a0.5 > sin.eps

正弦曲線

/ で区切られた x軸,y軸に,それぞれラベルをつけることもできる. 軸ラベルは :"ラベル": を / の前後に書く.

$ psxy sin.txt -R0/12.5660/-1/1 -Jx1/4 -Bg1.57075a3.1415:"x":/g0.5a0.5:"y = sin x": > sin.eps

正弦曲線

図の上下左右にラベルが描かれたが,右のラベルの y の下側が切れてしまっている. バグかなあ.

ラベルが上下左右に 2つづつあるのは,ちょっとくどい. ラベルの描画などを抑制するには, -Bオプションにさらに指定を追加するのだが, それは次回に解説することにしよう.


[ KDOホームにもどる ] [ いちからはじめる GMT インデックスにもどる ]


(C) 2008 KDO