My data looks like this:
m=pd.DataFrame({'model':['1','1','2','2','13','13'],'rate':randn(6)},index=['0', '0','1','1','2','2'])
I want to have the x-axis of factor plot ordered in [1,2,13] but the default is [1,13,2].
Does anyone know how to change it?
Update: I think I have figured it out in the following way, but maybe there is a better way by using an index to do that?
sns.factorplot('model','rate',data=m,kind="bar",x_order=['1','2','13'])
Your update to the post shows the correct way to do it, i.e. you should pass a list of
x
values toorder
in the order you want them plotted. The default for numeric data is to plot in sorted order, so if you have numeric values it's best to keep them as integers or floats instead of strings, so they will be in "natural" order.From the documentation it appears that the seaborn API has updated again, the argument
x_order
should be replaced byrow_order
: