2017-06-27 6 views
1

パンダでバーが並んでいるバープロットには良い方法がありません。私はmultiindexとsubplots引数を使って書くきれいな方法があるかもしれないように感じる?バー付きのファセットバープロットがパンダに並んでいます

import pandas as pd 
import matplotlib.pyplot as plt 

df = pd.DataFrame({'Group': ['A','A','B','B'], 
        'Name':['name1','name2','name3','name4'], 
        '2016': [1,2,3,4], 
        '2017': [1.2,2.1,3.0,4.9]})  
df.set_index(['Name'], inplace=True) 

fig, ax = plt.subplots(2) 

group_a = df[df.Group=='A'] 
group_b = df[df.Group=='B'] 
group_a.plot(kind='bar', rot=0, ax=ax[0]) 
group_b.plot(kind='bar', rot=0, ax=ax[1]) 

enter image description here

答えて

2

あなたが複数回何かをしたい場合は、それは常に価値機能やループの使用を検討。ここでは、ループで十分です。

groups = df.Group.unique() 

fig, ax = plt.subplots(len(groups)) 

for i, group in enumerate(groups): 
    df[df.Group==group].plot(kind='bar', rot=0, ax=ax[i]) 
関連する問題