matplotlib 按分组排序条形图

py49o6xq  于 2023-10-24  发布在  其他
关注(0)|答案(1)|浏览(114)

我有一个Pandas DataFrame,我groupby一列,调用.size,然后调用.plot.bar
我想在原始的框架中按某些列重新排列条形图,但是在sort_columns中传递它们来代替bar()不起作用:

nodes.groupby("Name").size().plot.bar(sort_columns="Class")

在Pandas条形图中对列进行预排序也没有效果-您如何对列进行排序?

kr98yfug

kr98yfug1#

我创建了一个随机的框架来帮助可视化数据。

#creating random data

data = {'a' : np.random.randint(0, 10, size = 10),
        'b' : np.random.randint(0, 10, size = 10),
        'c' : np.random.randint(0, 10, size = 10),
        'd' : np.random.randint(0, 10, size = 10),
        'e' : np.random.randint(0, 10, size = 10)}

df = pd.DataFrame(data)

# Custom sorting of columns
df.iloc[0][['a', 'c', 'd', 'b', 'e']].T.plot.bar()

[

]

# Sorting columns in acsending or decending order
df.iloc[0].sort_values(ascending = False).T.plot.bar()

[

]
注意:参数column_sort按列的名称而不是值对列进行排序。

相关问题