2016-08-16 42 views
3

我想用熊貓製作多個堆積條形圖。用熊貓定位多個堆積條形圖

這裏是一個示例代碼:

import pandas as pd 

df = pd.DataFrame({'a':[10, 20], 'b': [15, 25], 'c': [35, 40], 'd':[45, 50]}, index=['john', 'bob']) 

ax = df[['a', 'c']].plot.bar(position=0, width=0.1, stacked=True) 
df[['b', 'd']].plot.bar(position=1, width=0.1, stacked=True, ax=ax) 

其中,在筆記本上,提供以下的輸出:stacked bar plot

我現在面臨的問題是,對於每一組中,條不我希望他們成爲的順序。該文檔說明條形圖的「位置」參數指定了條形的相對位置,其中0表示左邊,1表示正確。但它似乎完全相反。我誤解了什麼?

回答

2

pd.Df.plot中的位置參數控制條形圖佈局的對齊。它類似於matplotlib條形圖的align參數的相似性。

插圖:

1.當position=0.5:[默認:中心對準]

df[['a', 'c']].plot.bar(position=0.5, width=0.1, stacked=True, ax=ax) 
df[['b', 'd']].plot.bar(position=0.5, width=0.1, stacked=True, ax=ax) 

該杆與X軸標籤重合,如下所示: enter image description here 2.當position=0:[左/底部邊緣對齊]

df[['a', 'c']].plot.bar(position=0, width=0.1, stacked=True, ax=ax) 
df[['b', 'd']].plot.bar(position=0, width=0.1, stacked=True, ax=ax) 

酒吧的最左邊的部分與X軸標籤如圖所示: enter image description here

現在,您可以清楚地區分上述2個數字之間的差異。

+1

很好的答案,謝謝!接下來是一個後續問題:使用熊貓的繪圖功能來繪製多重堆積條形圖的正確方法是什麼?我會有每個「組」4條。請告訴我,如果你認爲我應該創建一個新的職位,而不是 – fireboot

+1

我覺得會更好。你也可以在該文章中包含一個樣例'dataframe'。 –

+0

馬上就能做到這一點,謝謝! – fireboot