#author("2024-04-06T01:54:57+09:00","default:Miyashita","Miyashita") #author("2024-04-06T02:04:54+09:00","default:Miyashita","Miyashita") *GMT6のいいところ [#g0b6be9b] **gmt begin 〜 gmt end記法の良さ [#qb1ca7d2] [[概要>../Overview#j9367c62]]の方にもちょっと書いたが,gmt begin と gmt end というコマンドができて,これまでの煩わしいことが結構減った.~ 適当な地形データを描く例を見てみる.下はgmt begin 〜 gmt endを使った書き方の例. #codeprettify{{ topofile="$1" palette=earth output=${topofile//\.grd/} proj="X12/$(gmt grdinfo $topofile -Cn -o0,1,2,3 | awk '{print 12*($4-$3)/($2-$1)}')" echo $proj # ここから GMT6 gmt begin $output png gmt makecpt -C$palette -D gmt grdimage -J$proj -Baf -BneSW+t$topofile -R$topofile -C $topofile gmt colorbar -C -Bxaf -By+lm -DJMR+w8.0/0.3+o1.0/0.0 gmt coast -Wthinnest -Df gmt end }} 主なポイントは以下の通り. ***>, >>, -K, -O など不要 [#tfdcf7b3] これまでは最初のプロットには -K をつけて > で出力して,以降のプロットには -O で >> で…とやっていたが,gmt begin〜gmt end の中で一括りと判断するので,これらが不要になった.実際やってみると結構便利. ***2回目プロット以降の -R, -J が不要 [#fe1b5978] 2回目以降のプロットに -J -R などの表示範囲が同じ場合の省略形のオプションが不要になった. ***makecpt のファイル出力不要 [#t8e5b2ed] gmt makecpt したやつを何らかの hogehoge.cpt にはき出して,のちのコマンドで -Chogehoge.cpt というのが旧バージョンでの方法だった.~ gmt begin〜gmt endの中に makecpt を入れれば,ファイルに出力していなくても次のコマンドで -C と省略形を入れるだけで直前の makecpt を反映してくれる.~ これも結構良い. ***psconvert不要 [#e1b81e9f] #codeprettify{{ gmt begin figfig png }} としたら gmt endを実行した時に figfig.png というファイルができあがるし, #codeprettify{{ gmt begin figfig pdf }} としたら figfig.pdf というファイルができる.PSファイルからPDFに変換などしなくてよい. としたら figfig.pdf というファイルができる.PSファイルからPDFに変換などしなくてよい.~ こういった出力ファイル変換を内部で行うことになったのもあり,(ライブラリがちゃんと参照できないとダメなので)インストール時の依存関係がより厳格になった気がする.~ ~