震源分布図を描く その2

前回描いた図には何かが足りないことにお気づきですか?
そうです。震源の大きさの凡例がありません。
この図では震源の大きさはマグニチュードに0.1かけた値になっています。

というわけで、今回は震源の大きさの凡例を描きましょう。

凡例を描く

今回は記号の凡例なので、従来の方法で描く必要があります。

#!/bin/bash
gmt begin hypo png
    gmt basemap -JM12 -R120/150/20/50 -Bafg -BWSNE
    gmt makecpt -Cgeo -T-8000/8000/200 -Z
    gmt grdcut @earth_relief_15s -R120/150/20/50 -Gdem.nc
    gmt grdgradient dem.nc -Ggrad.grd -A45 -Ne0.8
    gmt grdimage dem.nc -Igrad.grd -C
    gmt coast -Df -W0.25 -LJBR+jTR+o0/1+c20+w500+f
    gmt makecpt -Cseis -T0/200/1 -Z
    awk '{print $2,$1,$3,$4*0.1}' "hypo.txt" | gmt plot -Sc -W0.25 -C
    gmt colorbar -DJBR+jBL+o2/0+w-5/0.2 -C -Baf+l"depth"
    gmt legend -DJTL+jTL+o0.2c -F+p2p,black+gwhite << END
N 1
S 0.3 c 0.1 red 0.5p,black 0.8 M1
G 0.25
S 0.3 c 0.2 red 0.5p,black 0.8 M2
G 0.25
S 0.3 c 0.3 red 0.5p,black 0.8 M3
G 0.25
S 0.3 c 0.4 red 0.5p,black 0.8 M4
G 0.25
S 0.3 c 0.5 red 0.5p,black 0.8 M5
G 0.25
S 0.3 c 0.6 red 0.5p,black 0.8 M6
G 0.25
S 0.3 c 0.7 red 0.5p,black 0.8 M7
END
gmt end

この結果が、

となります。

訳が分かりませんが、見ていきましょう。

gmt legend

凡例を描く際のコマンドの復習です。

記号説明
N段組みの設定
2段組以上にする場合はlegendの「+w」を指定する必要がある。
S記号
S [書き始める位置] [記号の種類] [記号の大きさ] [塗りつぶす色] [太さ,色] [記号とテキストの間隔] [テキスト]
B水平のカラーバー
D区切り水平線
Lラベル
「-j」オプションで書く場所を指定できる。
G空白
長さを指定すること。

すなわち、

N 1
S 0.3 c 0.1 red 0.5p,black 0.8 M1
G 0.25
S 0.3 c 0.2 red 0.5p,black 0.8 M2
G 0.25
S 0.3 c 0.3 red 0.5p,black 0.8 M3
G 0.25
S 0.3 c 0.4 red 0.5p,black 0.8 M4
G 0.25
S 0.3 c 0.5 red 0.5p,black 0.8 M5
G 0.25
S 0.3 c 0.6 red 0.5p,black 0.8 M6
G 0.25
S 0.3 c 0.7 red 0.5p,black 0.8 M7

とは、

1段組
左から0.3cmの所に直径0.1cm赤色の円を描いて、その0.8cm右0.5ポイントの黒文字「M1」と書く。
0.25cm空白行を置く。
左から0.3cmの所に直径0.2cmの…(以下省略)

という意味になります。理解できましたか?

legend は複雑なモジュールですが、沢山描いて慣れていってください。

コメント

タイトルとURLをコピーしました