1997年に公開された劇場版名探偵コナン第一作「時計じかけの摩天楼」以降、毎年欠かさずに上映されている名探偵コナン映画の最新の歴代興行収入の推移をプロットする。常に最新情報がプロットされるように興収情報をチェックしていくつもりである。
import pandas as pd
import requests
df = pd.read_html(requests.get(
'http://www.eiga-ranking.com/boxoffice/japan/alltime/total/1.html').content)
df[1].head(2)
df1 = df[1]
df2 = pd.read_html(requests.get(
'http://www.eiga-ranking.com/boxoffice/japan/alltime/total/2.html').content)
df2[1].head(2)
df3 = df2[1]
df4 = pd.read_html(requests.get(
'http://www.eiga-ranking.com/boxoffice/japan/alltime/total/3.html').content)
df4[1].head(2)
df5 = df4[1]
df6 = pd.read_html(requests.get(
'http://www.eiga-ranking.com/boxoffice/japan/alltime/total/4.html').content)
df6[1].head(2)
df7 = df6[1]
df8 = pd.read_html(requests.get(
'http://www.eiga-ranking.com/boxoffice/japan/alltime/total/5.html').content)
df8[1].head(2)
df9 = df8[1]
df10 = pd.concat([df1,df3,df5,df7,df9])
df10 = df10.reset_index(drop=True)
df11 = df10[(df10['タイトル'].str.contains("名探偵コナン"))]
df11 = df11.drop(213)
df11 = df11.drop(columns=['順位'])
df11['興行収入(億円)'].iloc[0] = 91.8
df11 = df11.sort_values(by='公開年',ascending=False)
df11
データをセーブする。
df11.to_csv('conan_movie.csv', index=False)
名探偵コナン映画は、全部で23作品ないといけないのだが、5作品ほど抜けているので、ネットから適当にデータを漁ってきて足りないデータを付け足す必要がある。
import pandas as pd
import requests
df11 = pd.read_csv('conan_movie.csv',encoding='utf-8')
data = {'興行収入(億円)':['11.0','18.5','21.5','63.3','93.7','76.5','97.8','120'],
'タイトル':['時計じかけの摩天楼','14番目の標的','水平線上の陰謀','純黒の悪夢',
'紺青の拳','緋色の弾丸','ハロウィンの花嫁','黒鉄の魚影'],
'公開年':['1997','1998','2005','2016','2019','2021','2022','2023']}
df12 = pd.DataFrame(data)
df12
df14 = pd.concat([df11,df12])
df14 = df14.reset_index(drop=True)
df14['タイトル'] = df14['タイトル'].str.replace('名探偵コナン ','')
df14['公開年'] = df14['公開年'].apply(pd.to_numeric, errors="coerce").astype(int)
df14 = df14.sort_values(by='公開年',ascending=False)
df14['興行収入(億円)'] = df14['興行収入(億円)'].apply(pd.to_numeric, errors="coerce").astype(float)
#df14['興行収入(億円)'].iloc[0] = 85.8
スポンサーリンク
1997年以降の興行収入推移をプロット¶
from matplotlib.pyplot import *
from matplotlib.font_manager import FontProperties
from matplotlib import rcParams
import matplotlib.patches as mpatches
style.use('ggplot')
rcParams["font.size"] = "18"
fp = FontProperties(fname='/usr/share/fonts/opentype/ipaexfont-gothic/ipaexg.ttf', size=54)
rcParams['font.family'] = fp.get_name()
rcParams["font.size"] = "25"
fig, ax = subplots(figsize=(20,15))
df14.set_index('タイトル').plot(ax=ax,y='興行収入(億円)',kind='barh',color='pink',width=.7)
rc('xtick', labelsize=25)
rc('ytick', labelsize=25)
xticks(np.arange(0,14e1,2e1/2),
['{}億'.format(int(x)) if x > 0 else 0 for x in np.arange(0,14e1,2e1/2)])
for j,i in enumerate(ax.patches):
ax.text((i.get_width()+.7 if int(i.get_width()) < 100 else i.get_width()-22),i.get_y()+.125,\
'{}億円 ({}年)'.format(float(str(i.get_width())),df14['公開年'].iloc[j]), fontsize=20, color='k');
名探偵コナン映画が、遂に、26作目にして興行収入が100億円の大台を超えました。2023年5月27日現在の推定興収が120億円となっています。昨今のコナンアニオリの著しいクオリティ劣化に比べると、コナン映画のクオリティはここ数年で飛躍的に上がっているように思えます。
スポンサーリンク
スポンサーリンク