Seaborn图条按Y左值排序

时间:2019-02-25 16:04:13

标签: python-3.x pandas matplotlib seaborn

我有一个数据框,将其按“群集”分组,然后按“均值”对值进行排序并重置索引。这些操作的结果是test

test = pd.DataFrame({'cluster':['5', '9', '4'],
                         'mean':[0.021418, 0.019616, 0.018616],
                         'count': [23, 34, 56]})

我需要同时绘制-在一个图中绘制均值和计数,但是我需要将条形图按mean进行排序。我尝试了其他答案中建议的选项order = test['mean'],但是如果我这样做,则条形消失。有人可以建议修复吗?谢谢!

sns.set(font_scale=1.5) #font size
fig, ax = plt.subplots(figsize=(20, 8))
brs = sns.barplot(x='cluster', y='mean', data=test, ax=ax, color="grey")
plt.xticks(rotation=90) #rotate labels
ax2 = ax.twinx()
cnt = sns.pointplot(x='cluster', y='count', data=test, ax=ax2, color="red")
ax.set(xlabel='', ylabel='Y 1') #rename y
ax2.set(xlabel='', ylabel='Y 2') #rename y
ax.set_title('Title')
brs.set(axis_bgcolor='white')
# Turns off grid on the left Axis.
ax.grid(False)
ax2.grid(False)
plt.show()

0 个答案:

没有答案