データ分析、IT、業務効率に関するブログ

アキの自由分析ブログ

各国別の日本への訪日外国人数をmatplotlibでグラフ表示

2022/09/07
 
この記事を書いている人 - WRITER -
都内の小さなAI会社に勤務しているアキです。
業務では、データ分析、システム開発、AI開発などを行っています。
エンジニアとして日々、勉強中です。

こんにちは!アキです!

前回は、日本全国での国籍別_在留外国人の人数をmatplotlibでグラフ表示いたしましたが、今回は各国別の日本への観光客人数をmatplotlibでグラフ表示したいと思います。

データは、日本政府観光局のデータを使います。

https://www.jnto.go.jp/jpn/statistics/visitor_trends/

まずは、コロナは2019年の12月頃から始まったので、2019年から2021年まで各年ごとに見てみましょう!

まずは、2019年の場合

df_2019 = pd.read_excel('since2003_visitor_arrivals.xlsx', sheet_name='2019',engine='openpyxl', skiprows=[0,1,2])

df_2019 = df_2019[['Unnamed: 0', '1月', '2月',  '3月', 
       '4月',  '5月', '6月', '7月', '8月',
       '9月',  '10月',  '11月',  '12月']]

df_2019=df_2019.dropna(axis=0, how='all').dropna(axis=1, how='all')

df_2019['合計']= df_2019.sum(axis=1)
df_2019 = df_2019.rename(columns={'Unnamed: 0':'country'})

# 上位を確認のため
df_2019.sort_values(['合計'], ascending=False)[:15]

# 10国を選択
list_top_2019 = ['中国', '台湾', '韓国', '香港', 'タイ', '米国','ベトナム', '豪州' 'フィリピン', 'マレーシア']
df_rest_2019 = df_2019[df_2019['country'].isin(list_top_2019)]
df_rest_2019 = df_rest_2019.sort_values(['合計'], ascending=False)

df_rest_2019 = df_rest_2019.set_index('country')

# 可視化
plt.figure()
plt.rcParams["font.size"] = 12
df_rest_2019.T[:12].plot(figsize=(12, 10))
plt.xlabel('付き別')
plt.ylabel('人数')
plt.ylim(0, 1_200_000)
plt.title(f"国別の日本への訪日外国人数(上位10ヶ国)_2019年")
plt.grid()

縦の目盛りですが、最大120万にして、表示しています。

見ますと、中国の方がよく、日本にいらしてくれてますね!夏頃は毎月100万人を超えています。

次に、コロナが始まった2020年を表示します。(ドキドキ)

コードは、上記とほぼ同じですので、省略。

う〜ん。

こうしてみますと、わずか1,2ヶ月の間に大幅に人数が下がってますね。。( ; ; )

2019年とおなじ縦の目盛りにしていますが、これですと、ほぼペシャンコになってわかりません。。

非常に分かりづらいですので、2020年のグラフの元となったデータフレームを載せておきます。

5月は、どの国も100人をきってますね。。

さて、2021年の場合は。。

やはり、一向に上昇する気配がありませんでした。(泣)

ご参考までに、2021年のデータフレームを載せておきます。

早く、コロナ前の状態に戻って欲しいですね!

この記事を書いている人 - WRITER -
都内の小さなAI会社に勤務しているアキです。
業務では、データ分析、システム開発、AI開発などを行っています。
エンジニアとして日々、勉強中です。

- Comments -

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA


Copyright© アキの自由分析ブログ , 2022 All Rights Reserved.