パープルハット

※当サイトではGoogleアドセンス広告を利用しています

Pandas DataFrameの積み上げ棒グラフ





使用するデータ

import pandas as pd
df = pd.DataFrame({
    'Class': ['A', 'A', 'A', 'B', 'B', 'B', 'B', 'B'],
    'Answer': ['Yes', 'No', 'No', 'No', 'Yes', 'Yes', 'Yes', 'Yes']
})
df







積み上げ棒グラフの場合

Class別のAnswerの内訳を取得

grouped_df = df.groupby('Class')['Answer'].value_counts().unstack()
grouped_df





描画

grouped_df.plot(kind='barh', stacked=True)
plt.show()







100%積み上げ棒グラフの場合

Class別のAnswerの内訳を取得

grouped_df2 = df.groupby('Class')['Answer'].value_counts(normalize=True).unstack()
grouped_df2





描画

grouped_df2.plot(kind='barh', stacked=True)
plt.xlim(0, 1)
plt.show()