2014/05/22

gnuplotでpm3dを使って2次元のデータも描画する

Gnuplot を使って等高線を書く時は set contour で出来た.最近のGnuplotでは密度グラフが書けるようになったということで,その時のメモ

set view 0,0
3次元グラフを真上から見る

set pm3d explicit map
explicit は,2次元のラインデータなども同時に描画するため
mapは,Y軸メモリを右ではなく左に持ってくるため

unset ztics
しないと,view 0,0 の時にZ軸のラベルが縮退してしまってなんだか分からなくなる.

set cbrange [min:max]
カラーバーのスケールを決める.xrange などと同様に指定がなければ適当にやってくれる.複数のグラフを書くときは設定する方が吉.

splot 'data' notitle w pm3d, 'world_10m_3d.txt' lt -1 notitle w l

world_10m_3d.txt は,Gnuplot's Tips で紹介されていた世界地図描画用のデータを3次元バージョンに変換したもの.と言っても,splotで読めるようになれば良いだけなので,x y に対して, z を某かの固定値で追加してあげれば良い.
* 書いてて判明したけど,2次元データをそのまま using で3次元に見立てて上げれば良いだけみたい.
'world_10m.txt' using 1:2:0 lt -1 notitle w l
でも描画された(何故こうなるのかは不明)