今回はデータでレースを行う
データレースを作る方法についてです。


解説動画はこちら



このデータレースというのは
良くYoutubeでも見かける
データを使ったレース動画のことで

時系列データを用いて
棒グラフの増減をレースの様に
見せる形式の動画のことです。

flourish

などで作成するのが有名かと思います。

今回はこれを
Python言語でやってみましょう。


Python言語では
bar_chart_race
というライブラリでこれを実現できます。



bar_chart_raceのインストール

Google Colab上では
こちらのコマンドでインストールが実行できます。
!pip install bar_chart_race
!pip install japanize-matplotlib

日本語を用いたデータレースを行いたい場合は
japanize-matplotlibも合わせて
インストールする必要があります。


ライブラリの読み込み

こちらのコードで
ライブラリ読み込みができます。
import pandas as pd
import bar_chart_race as bcr
import japanize_matplotlib

サンプルデータで試してみる

 
ライブラリには最初から
サンプルデータが付属しているようなので
これを読み込んでみます。
# サンプルデータ読み込み
df = bcr.load_dataset('covid19')

# データのサイズ
print(df.shape)
(52 , 20)


データ構造について

bar_chart_race
で使えるデータ構造は決まっていて
次の3つのデータが必要です。

・日付(インデックス)
・カテゴリ値(カラム名)
・値(数値)



動画の作成

次のコードで動画を作成できます。
# 動画の生成
bcr.bar_chart_race(
    df=df,
    filename='ファイル名.mp4',
)
作成した動画は
Colabのファイル置き場に保存されます。

再生するとこんな感じの
動画が出来るかと思います。

スクリーンショット 2024-01-13 17.11.49


設定できるパラメータ


bcr.bar_chart_raceの引数には
色々なパラメータを付与できます。
period_length : 動画の長さ
fixed_max : 最大値を固定するかどうか
fixed_order : 順位を固定するかどうか
n_bars : 表示する順位の個数
steps_per_period : 1stepあたりの数

この辺りを付ければ
自分の理想のレース動画が
出来ると思います。

詳しいパラメータ設定は
公式ドキュメントをご確認くださいね。


今回は少し古いネタですが
データレースの作り方をお伝えしました
それでは。