kepler.glの使い方メモ
この記事では、地理情報をこんな風に可視化する手順を説明します。
始めに
地理空間データは可視化が非常に重要です。普段は可視化にuMapを使うのですが、GeoSaturdayに参加した際に、Jupyter+GeoPandas+KeplerGLだとかっこいい可視化ができる事例を見ました。その際は、Pythonはよくわからないし、**.glってことはプログラミング用ライブラリなので難しそう、と思って手を付けませんでした。そのあとに調べてみると、kepler.glはuMapやGoogleマイマップのようにデータをアップロードすれば地図上に可視化してくれるものだと分かりました。
そこで、GeoSaturdayで見た事例を再現してみることにしました。
データ作成
まずは可視化するデータを探します*1。今回は、ある都道府県から別の都道府県に転居した人数のデータを使いました。
Excelファイルはいまいち使いにくいフォーマットなので、DBのリンク先に飛んで、ある程度整形したデータを入手したほうがよいです。
こんな感じのデータが入手できます。
北海道から青森への移住者が1662人、青森から北海道への移住者が2157人だそうです。
双方向のデータがあると表示が面倒なので、一方通行のデータにします。Excelでvlookupなどを使ってデータを加工して、逆移動人口との差をとり、差し引き移動人口を求めます。差し引き移動人口が正の値のデータだけを抽出すれば完成です。
kepler.glで可視化するためには座標データが必要です。各都道府県の座標は、こちらのページからデータを使わせてもらいました。
またvlookupを活用してデータを加工して、こんな感じのデータを作ります。データはCSV形式で保存します。
これでデータ作成・加工は完了です。
データ表示
kepler.glにアクセスし、ボタンを押して始めます。
作成したCSVファイルを画面にドロップするとデータを読み込んでくれます。項目名をそれっぽい名前にしておいたので、座標も自動で読み込んでくれました。
今回は人口の移動をアーチ状のラインで表示させたいので、目玉マークをクリックして表示させます。
するとぐちゃぐちゃな画面が表示されます。
右上の3Dアイコンをクリックして、
斜め上から表示させます。
できました。色味を調整して、こんな感じにしてみました。
これでもいいのですが、GeoSaturdayで見た例では、マウスオーバーした場所のデータだけを表示させていましたので、そちらもやってみます。
操作パネルの"Interactions"タブから、Brushを有効化して、Brush Radiusを少し大きく変更します。
すると、マウスオーバーした場所のアーチラインだけが表示されるようになりました。
— muramoto (@muramototomoya) 2020年1月5日
なお、kepler.glウェブサイトはアップロードしたデータを保存してくれません*2。ですので、可視化マップを保存・共有するためには、Shareボタンからデータをdropboxにアップロードする必要があります。
まとめ
- kepler.glを使うといい感じで地理データの可視化ができます
- うまく表示するためには、データの前処理が大事です