web-dev-qa-db-ja.com

海生まれの因子プロットの順序を変更する方法

私のデータは次のようになります。

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

因子プロットのx軸を[1,2,13]で並べ替えたいのですが、デフォルトは[1,13,2]です。

誰かがそれを変更する方法を知っていますか?

更新:私はそれを次のように理解したと思いますが、インデックスを使用してそれを行うより良い方法があるかもしれませんか?

sns.factorplot('model','rate',data=m,kind="bar",x_order=['1','2','13'])
14
MYjx

投稿の更新は、それを行う正しい方法を示しています。つまり、x値のリストをプロットしたい順序でorderに渡す必要があります。数値データのデフォルトはソートされた順序でプロットされるため、数値がある場合は、文字列ではなく整数または浮動小数点数として保持するのが最善であり、「自然な」順序になります。

18
mwaskom

documentation から、seabornAPIが再び更新されたようです。引数x_orderorderに置き換える必要があります。

sns.factorplot('model', 'rate', data=m, kind="bar", order=['1','2','13'])

また、factorplotは名前が変更されており、将来のリリースで削除される予定です。 catplotに置き換えられます。

sns.catplot('model', 'rate', data=m, kind="bar", order=['1','2','13'])
0
Archie