Apple からAppleマップのログによる通行量のデータが公開されました。
152箇所の国/地域、都市のデータがあります(国/地域は63, 都市は89)。
移動のタイプは車(Driving), 徒歩(Walking), 公共交通機関(Transit) の3つが区別されています。
ということで、可視化していきたいと思います。
使ったツールは python, pandas, matplotlib, jupyter notebook などです。
日本国内での比較:
日本の都市は、東京(Tokyo), 大阪(Osaka), 名古屋(Nagoya), 福岡(Fukuoka) の4つが入っていました。それに日本全体(Japan) を加えた5つでグラフ作成。
日本と他国との比較:
Appleのページではデフォルトとして、アメリカ(USA, United States), ドイツ(Germany), イギリス(UK), イタリア(Italy) の比較グラフが表示されています。これに日本(Japan)を足してグラフ作成。
日付は Pacific time とのことなので、本来はタイムゾーンの調整が必要なんだけど今回はスルー。
なお、これらのグラフはツイッターでもシェアしています。
§
グラフ描画に使ったコードを貼っておきます。
いろいろとイマイチでして、もっと pandas らしく書けるはず。修行します……。
152箇所の国/地域、都市のデータがあります(国/地域は63, 都市は89)。
移動のタイプは車(Driving), 徒歩(Walking), 公共交通機関(Transit) の3つが区別されています。
ということで、可視化していきたいと思います。
使ったツールは python, pandas, matplotlib, jupyter notebook などです。
日本国内での比較:
日本の都市は、東京(Tokyo), 大阪(Osaka), 名古屋(Nagoya), 福岡(Fukuoka) の4つが入っていました。それに日本全体(Japan) を加えた5つでグラフ作成。
日本と他国との比較:
Appleのページではデフォルトとして、アメリカ(USA, United States), ドイツ(Germany), イギリス(UK), イタリア(Italy) の比較グラフが表示されています。これに日本(Japan)を足してグラフ作成。
日付は Pacific time とのことなので、本来はタイムゾーンの調整が必要なんだけど今回はスルー。
なお、これらのグラフはツイッターでもシェアしています。
§
グラフ描画に使ったコードを貼っておきます。
コード
import pandas as pd import numpy as np import matplotlib.pyplot as plt %matplotlib inline import seaborn as sns; sns.set() df = pd.read_csv("data/applemobilitytrends-2020-04-13.csv") #cn_list = ("Japan", "Tokyo", "Osaka", "Nagoya", "Fukuoka") cn_list = ("Japan", "United States", "UK", "Germany", "Italy") df = df[df['region'].isin(cn_list)] transportation_type = ("driving", "transit", "walking") fig = plt.figure(figsize=(15,15)) fig.subplots_adjust(hspace=0.5) data_title = "Apple Maps Mobility Trends Reports" for i, tt in enumerate(transportation_type, 1): tmp = df[df['transportation_type'] == tt].iloc[:,3:-1] tmp.index = df[df['transportation_type'] == tt][ 'region'] tmp = tmp.transpose() tmp.index = pd.to_datetime(tmp.index) ax = fig.add_subplot(3,1,i) tmp.plot(ax=ax) ax.set_title(tt + " - " + data_title) ax.set_ylim(0,210) ax.legend(loc='upper right') ax.grid(which='minor') file_name_key = '-'.join(cn_list) file_name = ("Apple Maps Mobility Trends Reports " + file_name_key + ".png").replace(' ', '-') fig.savefig(file_name, bbox_inches='tight', pad_inches=0)
いろいろとイマイチでして、もっと pandas らしく書けるはず。修行します……。