日本全国の推計人口をPythonで可視化してみた

データ分析

国土数値情報の地域メッシュ別推計人口データを利用して、日本全国の推計人口を可視化してみました。

本記事のまとめ
● 入力データ
 ・国土数値情報 1kmメッシュ別将来推計人口データ
● 開発言語
 ・Python
 ・plotly(可視化ライブラリ)
● 本記事で得られること
 ・日本全国の将来推計人口(2050年)
 ・Pythonの可視化ライブラリ(plotly)の実装方法【ソースコード付き】

推計人口データ(国土数値情報)

今回、国土数値情報の1kmメッシュ別将来推計人口データを利用しました。

2015年から2050年までの5年毎の推計人口データが取得できます。

Pythonで推計人口データを可視化

可視化ライブラリ plotly

各地域メッシュ毎の推計人口をプロット(2050年)

各地域メッシュにカーソルを合わせると2020年と2050年の推計人口が確認できます。

推計人口が多い地域メッシュが赤く表示されています。

ライブラリをインポート

import plotly
import plotly.express as px
import jismesh.utils as ju # 地域メッシュコードを緯度軽度に変換する時に使用

推計人口データのメッシュコードからメッシュの中心緯度経度に変換

df_pop['latitude'], df_pop['longitude'] = ju.to_meshpoint(df_pop["MESH_ID"], lat_multiplier=0.5, lon_multiplier=0.5) 

各地域メッシュ毎の推計人口をプロットし、htmlファイルに出力・保存

# plotlyでプロット
fig = px.scatter_mapbox(
    # データフレームおよび緯度・経度の設定
    data_frame=df_pop,
    lat="latitude",
    lon="longitude",
    # ホバー時の表示設定
    hover_data=["latitude","longitude","PTN_2020","PTN_2050"],
    # 散布図のマーカーの設定
    size="circle_size",
    size_max=1,
    color=param_select_population_year, # 対象年の推計人口数でカラーを設定
    color_continuous_scale="Turbo",
    range_color=[0,30000],
    # グラフの設定
    center={'lat':param_location_center[0], 'lon':param_location_center[1]},
    zoom=4,
    width=1200,
    height=800,
    mapbox_style='open-street-map'
    )
# htmlファイルの保存
file_name = f'推計人口.html'
plotly.offline.plot(fig, filename=f'{param_directory_output}{file_name}', auto_open=False)

まとめ

以上、国土数値情報の地域メッシュ別推計人口データを利用して、日本全国の推計人口を可視化してみました。

今回利用したplotlyは、簡単にインタラクティブなグラフが描画できるので非常に便利です!

コメント

タイトルとURLをコピーしました