golangで政府統計データ(e-Stat)を取得してグラフを作成する
golangで外部APIの情報を使いグラフを作成してみたかったので、
政府統計の総合窓口(以下、e-Stat)が提供している政府統計データを利用してみました。
目次
- e-Statって?
- グラフ表示に使ったパッケージ
- 作ったもの
- コード
e-Statって?
e-Statとは、日本の統計が閲覧できる政府統計ポータルサイトで、開発者向けてにAPI(以下、e-StatAPI)を提供しています。
簡単な利用登録でAPIを使うことができるのでありがたいです。
今回は使い方について詳しく書かないので、以下を参考にしてください。
グラフ表示に利用したパッケージ
サンプルが載ってます。
https://github.com/gonum/plot/wiki/Example-plots
前にこのパッケージを利用した簡単な記事を書きました。
作ったもの
平成26年10月1日現在人口推計から、
男女の0,20,40,60,80,100歳以上の人数を取得して、棒グラフ作成しました。
60歳以上は女性の方が多いんですね。
パッケージのサンプルをかなり参考にしました。横の項目の位置が少しずれてしまうのは直せませんでした。
あと、日本語対応してないみたいですね。そりゃそうか。
コード
gist2ba4737937e42156477d3e8a304dfdcf
JSONの$のバインドで少し詰まったんですが、なんとか解決できました。
最後に
JSONデータをパースするときに、要素分の構造体を書かないといけないのがかなり面倒です。 なので、利用していない要素に関してはinterface{}を書き手抜きしました。 改良するとしたら、プルダウンで取得したい情報を選択して、該当するグラフを動的に作成するのを作りたいですね。