2016-12-01 104 views
4

我有一個熊貓數據框。我想用柱狀圖繪製兩列的值,柱狀圖通過另一列對值進行排序。熊貓DataFrame條形圖與其他列的sort_values

例如,我想按列a_b(列ab的總和)中的降序對值進行排序。 另外,xlabel是旋轉的,我想修復它。

您的幫助,將不勝感激。

import pandas as pd 
%matplotlib inline 
a = pd.Series([4,8,6,7,8,3,9,7]) 
b = pd.Series([3,6,8,3,4,6,10,4]) 
a_b = a+b 
df = pd.concat([a,b,a_b],axis=1,join='inner') 
df.columns = ['a','b','c'] 

df[['a','b']].sort_values(by='a',ascending=False).plot(kind='bar',stacked=True) 

enter image description here

回答

4

排序數據幀首先c然後繪製。

df.sort_values('c', ascending=False)[['a','b']].plot.bar(stacked=True) 

enter image description here

2

修正了@piRSquared答案使用rot=0旋轉問題。

df.sort_values('c', ascending=False)[['a','b']].plot.bar(stacked=True, rot=0) 

enter image description here