0
0

GMTで自動的に座標軸を設定してxyプロット

Last updated at Posted at 2024-06-12

改訂:2024-06-13 文体を変更しました。

Generic Mapping Tools (GMT) を使って、入力したx-yのデータから自動的にX軸、Y軸の範囲や目盛りを設定してグラフを描くスクリプトを作成しました。UNIXでよく使われていたxgraphというソフトから想起したものです。

データの中身を確認したいときに使うもので、他人に見せるほどの修飾はしていません。また、ここでは画像ファイル形式としてPNGを選んでいますが、GMTがサポートしているファイル形式であれば、どれでも良いでしょう。

#!/bin/bash
INFILE=$1
INC=$(gmt info -C ${INFILE} | awk '{xinc=($2-$1)/5; yinc=($4-$3)/5; printf("-I%0.0g/%0.0g\n", xinc, yinc)}')
echo ${INC}
RANGE=$(gmt info ${INC} ${INFILE})
echo ${RANGE}
gmt begin xy png
gmt basemap -JX12 ${RANGE} -Bxaf -Byaf -BWSne
gmt plot -W1 ${INFILE}
gmt end show

これを例えばファイル名 xy.sh として保存し、実行ファイルにします。

chmod +x xy.sh

データのファイル名を例えばsample.datとすると、次のように実行します。

./xy.sh sample.dat
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0