前回の記事ではpandasのplotメソッドを使って、折れ線グラフにデータをプロットする例を紹介したが、今回は棒グラフにプロットする例を紹介しよう。
Contents
サンプルデータセットの用意
必要なライブラリをインポートして、サンプルとなるシリーズを用意する。
import matplotlib as plt import pandas as pd import numpy as np data = pd.Series(np.random.rand(16), index=list('abcdefghijklmnop')) # a 0.029757 # b 0.272419 # c 0.447357 # d 0.314266 # e 0.597517 # f 0.764892 # g 0.741955 # h 0.277052 # i 0.680357 # j 0.966261 # k 0.634952 # l 0.427652 # m 0.525143 # n 0.373020 # o 0.159163 # p 0.088350 # dtype: float64
plot.barメソッドで縦棒グラフを描く
シリーズやデータフレームのplot.barメソッドを使うと、データを縦棒グラフへプロットすることができる。
この時、シリーズのインデックスはx軸の目盛として使われる。
data.plot.bar()

plot.barhメソッドで横棒グラフを描く
横棒グラフを描く場合は、plot.barhメソッドを使う。
シリーズのインデックスはy軸の目盛として使われる。
data.plot.barh()

データフレームから棒グラフへプロットする
データフレームから棒グラフへプロットする場合、各行の値はグルーピングされて描かれる。
df = pd.DataFrame(np.random.rand(6, 4), index=['one', 'two', 'three', 'four', 'five', 'six'], columns=pd.Index(['A', 'B', 'C', 'D'], name='Group')) # Group A B C D # one 0.024554 0.961763 0.605184 0.459349 # two 0.540856 0.446543 0.868348 0.761469 # three 0.240845 0.189343 0.592793 0.485723 # four 0.989029 0.216652 0.721413 0.924776 # five 0.193881 0.484769 0.260032 0.437120 # six 0.455335 0.194646 0.587198 0.539196
サンプルのデータフレームが用意できたらプロットを実行する。
df.plot.bar()

積み上げ棒グラフを描く
プロットする際の引数に、stacked=Trueを指定すれば積み上げ棒グラフをプロットすることができる。
df.plot.barh(stacked=True)
