Quantcast
Channel: Bashタグが付けられた新着記事 - Qiita
Viewing all articles
Browse latest Browse all 2870

【GMT】台風データを使って描画してみた

$
0
0
概要 GMTを使ってベストトラックデータを使って各台風における中心気圧や最大風速の時系列変化を描画する。 以下のことが学習可能。 シェルスクリプト(データの読み書きや扱い方など) GMTのpsxyコマンド ベストトラックデータ 台風業界で最も有名なデータの1つで、台風の各種情報をテキスト形式で格納。 データ形式がわかりにくいため、実際に使用する場合は気象庁ベストトラックフォーマットを見ておくと良い。 データは気象庁ベストトラックページから取得可能。今回は2021年(2021年11月1日現在は1~8号)のデータを使用。 台風データの分割 気象庁ベストトラックページから取得したベストトラックデータは1年分を1ファイルで格納されている。 これだと非常に使いにくいため、台風1つごとのデータに分割する必要がある。 (自分でやるのがめんどくさいという方はGitやブログにソースがあるので使ってください) データ整形 + 描画 GMTで描画していきます。2021年1号の例です。 bash # Standard Settings tyNum=2101 savePs=2101.ps mswTxt=2101_MaximumSustainedWind.txt presTxt=2101_Pressure.txt # GMT Settings dispTime=a1Df3Hg6H startDate=2021-02-16T00:00:00 gmtDate=2021-02-23T00:00:00 timeInterval=`echo "scale=5; 0.00031 / 7" | bc` gmt psxy $presTxt -B$dispTime:"UTC":/a20g10:"Pressure[hPa]"::."20${tyNum:0:2} No.${tyNum:2:2}":WSn -R$startDate/$gmtDate/940/1020 -Jx${timeInterval}T/0.15 -Sc0.2 -Gblue -K > $savePs gmt psxy $presTxt -B -R -J -W1,blue -P -K -O >> $savePs gmt psxy $mswTxt -B/a10:"MSW[kt]":E -R$startDate/$gmtDate/0.1/100 -Jx${timeInterval}T/0.12 -Ss0.2 -Ggreen -P -K -O >> $savePs gmt psxy $mswTxt -B -R -J -W1,green -P -K -O >> $savePs gmt pslegend -R -J -Dx1.8/11.5/2.5/1.2 -F+p1,black+gwhite -P -O >> $savePs S 0.2 c 0.2 blue black 0.5 Pressure S 0.2 c 0.2 green black 0.5 MSW EOF gmt ps2raster $savePs -E100 -Tg 今回は時系列グラフを書くので。GMTに食べさせるデータはこのような形である必要があります。 GMTは2021-01-01T00:00:00にしないと時刻だと理解してくれない、つらい。 2021-01-01T00:00:00 1000 2021-01-01T60:00:00 990 ... GMTのpsxyコマンドでは、プロット位置に○を描画させる処理と線を結ぶ処理をしています。 pslegendは凡例を描画するコマンドで、少し厄介で、<<EOF ... EOFなどで囲った部分で凡例の内容を示します。 psファイルは扱いにくいので、最後にps2rasterでpng出力させています。 こんな図が出来上がります。 GMTは本当綺麗なんですよね。 その他 より詳しく知りたい方は、ブログをご覧ください。 各種ソースコードはGitHubにおいています。

Viewing all articles
Browse latest Browse all 2870

Trending Articles