Googleスプレッド経由しTableauで推移可視化【梅雨の降水量平年比】
-
要点
- Googleスプレッドシートを使います。
- 文字化けを防ぐためにGASの関数を使います。
- ピボットを使います。
気象庁のテータをGoogleスプレッドで取得します
無償で使えるTableau Publicが備えるGoogleスプレッドシートをデータソースとする機能を試してみました。
これまで、ローカルに保存したデータを使うことが多かったのですが、Googleスプレッドシートを使用できれば、IMPORT関数でWeb上のデータを直接取得→Tableauで可視化という手順が可能になり、利便性が増します。
気象庁の梅雨の降水量平年比のデータを使うことにしました。
※平年比(%)は観測値/平年値と計算します。平年値は、平均気温・降水量・日照時間いずれもひと月別値の30年平均値だそうです。
気象庁のデータをExcelで開いて内容を確認しました。
Googleスプレッドシートが持つIMPORTDATA(関数)を使い取り込みました。
=IMPORTDATA("https://www.data.jma.go.jp/fcd/yoho/baiu/tsuyu_prec.csv")
列名(ヘッダ)の日本語部分が文字化けしました。
utf-8形式でないと文字化けするようです。
困りました。
検索して調べた結果、Google Apps Script(GAS)を使って解消できることがわかりました。
そこで紹介されているスクリプトをGoogleスプレッドシートのスクリプトエディタに貼り付けて使わせて頂きました。
文字化け解消。Tableauに取り込みます
作成した関数importCSVを使って再取り込みです。
=importCSV("https://www.data.jma.go.jp/fcd/yoho/baiu/tsuyu_prec.csv",1)
今度は文字化けせず取得できました。
Tablesu Publicで取り込みます。
取り込んだ直後の状態です。
ただ、2行目に「年」「平年差」とテキストデータが入っており、その列が文字列型になっています。
後で解消できるので、気にせず整数型に変換します。
nullに変わりました。
行単位で消せないようなのですが、後で外すことできるので、可視化に進みます。
ワークシートに移動します。
折れ線グラフを作ります
列に「時間軸」、行に「関東甲信地方」をドラッグすると、自動で折れ線グラフを選択して作成してくれました。
グラフ右下に「1個のNULL」と表示されます。
クリックして「データのフィルター」を選ぶと、nullが除外されます。
これで、取り込み時にあったnull値を外すことができました。
「九州南部」をドラッグすると、そのグラフが追加されます。
ドラッグする際、Y軸左側に上に置くようにすると、同じ画面上にグラフが追加されます。
ピボットを使ってエリア別グラフを作りやすくします
ただ、エリア(地方)別のグラフを全部描くには、エリアの数だけドラッグする必要があります。
その手間を少なくするためにデータソース取り込み画面に戻り、ピボット機能を使って表の体裁を変えます。
以下のような形式に表が変わります。
時間軸 | エリア | 平年差 |
---|---|---|
… | … | … |
… | … | … |
… | … | … |
… | … | … |
… | … | … |
ただ、nullがあるため、余計な列ができてしまいます。
(行と違い)列は削除できます。
可視化に使いたい列にnull値が残っていますが、先ほど同様後で外せるのでこのまま進みます。
列に「時間軸」、行に「平年差」、左側のパネルに「エリア」をドラッグすると、エリア別グラフが作成できます。
先ほど同様にnullを外します。
2020年は雨量が多かった
このままでは見にくいので、もう少しいじりました。
平年差(単位%)なので本来の使い方ではないと思うのですが、積み上げ棒グラフに切り替えてみました。
2020年は例年より雨量が多かったことがわかりました。
作業の区切り区切りでファイル→Tableau Publicに保存します。
了
Author And Source
この問題について(Googleスプレッド経由しTableauで推移可視化【梅雨の降水量平年比】), 我々は、より多くの情報をここで見つけました https://qiita.com/text_owleyes/items/9415c96603e90a0095bb著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .