Elasticsearch に入っているデータを元に、Kibana で可視化する機会があった。 値を点・円の大きさで可視化する knowledge はあったが、今回は市町村の形ごとに色を変えるヒートマップとして表現した。 地形データを変えれば都道府県や任意の区分けで色塗りできると思う。
完成図
以下の例は、東京都における年度別・市町村レベル別の人口をヒートマップで可視化したもの。 市町村の形で縁取られたカラーマップとなっていることが確認できる。
事前準備
データ投入
今回は可視化に使うデータ(可視化したい情報)を事前に ES へ投入しておく。 例として市町村の人口を可視化してみる。
- 市町村毎の人口:https://www.toukei.metro.tokyo.lg.jp/juukiy/jy-index.htm
地形データ準備
- 地形データ:https://github.com/smartnews-smri/japan-topography
- この例ではローポリゴンな境界線を使ったが、10 倍細かくメッシュを取られた地形データも公開されている
手順
- ES へデータを投入する
- ES の Maps ➜ Create ➜ Import GeoJson ➜ 地形データの GeoJson を読み込ませる
- Joins で、「人口と自治体コードの index」と「地形データ」を結合する
- LayerStyle で色や見栄えを設定する
- it works!
参考文献
- 加工済み市町村ポリゴンデータ https://github.com/smartnews-smri/japan-topography.git
- 市区町村データ:国土交通省 国土数値情報(行政区域) https://nlftp.mlit.go.jp/ksj/
- https://qiita.com/terukizm/items/46b531b7fcc7a5f6f436
- https://www.elastic.co/jp/blog/creating-region-map-with-japan-prefectures
- https://dev.classmethod.jp/articles/kibana-region-map-custom-geojson/