如何改变seaborn中因子图的顺序

MYj*_*Yjx 14 python bar-chart pandas seaborn

我的数据如下:

m=pd.DataFrame({'model':['1','1','2','2','13','13'],'rate':randn(6)},index=['0', '0','1','1','2','2'])
Run Code Online (Sandbox Code Playgroud)

我希望在[1,2,13]中排序因子图的x轴,但默认值为[1,13,2].

有谁知道如何改变它?

更新:我想我已经通过以下方式解决了这个问题,但也许有一种更好的方法可以使用索引来做到这一点?

sns.factorplot('model','rate',data=m,kind="bar",x_order=['1','2','13'])
Run Code Online (Sandbox Code Playgroud)

mwa*_*kom 18

您对该帖子的更新显示了正确的方法,即您应该按照您希望它们绘制的顺序传递x值列表order.数值数据的默认值是按排序顺序绘制,因此如果您有数值,最好将它们保留为整数或浮点数而不是字符串,因此它们将按"自然"顺序排列.

  • x_order参数已重命名 (6认同)