JavaScriptを有効にしてください

【Python】Bar Chart Race を使ってグラフ動画を作る

 ·  ☕ 1 分で読めます

【Python】 Bar Chart Race を使ってグラフ動画を作る

Python で Bar Chart Race を使用してグラフ動画を作る方法。

環境

  • Python3

ffmpeg の導入

動画作成用に ffmpeg を導入してください。

apt install -y ffmpeg

パッケージインストール

動画作成用のパッケージ

Bar Chart Race

pip bar_chart_race

グラフの日本語表示用パッケージ

japanize-matplotlib - PyPI

pip japanize_matplotlib

ソースコード

グラフの元データは 新型コロナウイルス(COVID-19)感染症の対応について|内閣官房新型コロナウイルス感染症対策推進室 から取得させていただいています。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
import requests
import json
import pandas as pd
import bar_chart_race as bcr
import japanize_matplotlib

# コロナの感染者を取得
r = requests.get('https://opendata.corona.go.jp/api/Covid19JapanAll')
with open('covid19_daily.json', 'w') as f:
    f.write(r.text)

# JSONを読み込む
data = json.load(open('covid19_daily.json'))

# JSONをデータフレームにする
df = pd.DataFrame(data["itemList"])

# 整形
# 10行ごとにデータ変換
df = df.pivot_table(
    index='date',
    columns='name_jp',
    values='npatients').dropna()[::10]

# アニメーションをmp4で保存する
bcr.bar_chart_race(
    df=df,
    filename='covid19_daily.mp4',
    title='COVID-19 都道府県別感染者数',
    orientation='h',
    sort='desc',
    n_bars=10,
)

動画

出来上がった動画はこちらになります。

参考

共有

こぴぺたん
著者
こぴぺたん
Copy & Paste Engineer