218

私は単純なファクタープロットを持っています

import seaborn as sns
g = sns.factorplot("name", "miss_ratio", "policy", dodge=.2, 
    linestyles=["none", "none", "none", "none"], data=df[df["level"] == 2])

ここに画像の説明を入力

問題は、x ラベルがすべて一緒に実行され、読み取り不能になることです。ラベルが読めるようにテキストを回転するにはどうすればよいですか?

4

10 に答える 10

355

@mwaskornの回答に問題がありました。

g.set_xticklabels(rotation=30)

これにはラベルも必要なため、失敗します。@Amanの答えよりも少し簡単なのは、追加するだけです

plt.xticks(rotation=45)
于 2016-01-11T13:02:26.357 に答える
205

tick_paramsmatplotlibAxesオブジェクトの メソッドを使用して目盛りラベルを回転できます。特定の例を提供するには:

ax.tick_params(axis='x', rotation=90)
于 2014-10-24T03:02:47.223 に答える
36

これはまだ matplotlib オブジェクトです。これを試して:

# <your code here>
locs, labels = plt.xticks()
plt.setp(labels, rotation=45)
于 2014-10-24T01:46:17.427 に答える
12

facetgrid でサポートされているシーボーン プロットは機能しません (catplot など)。

g.set_xticklabels(rotation=30) 

ただし、barplot、countplot などは facetgrid でサポートされていないため機能します。以下はそれらのために機能します。

g.set_xticklabels(g.get_xticklabels(), rotation=30)

また、2 つのグラフが重なり合っている場合は、それをサポートするグラフで set_xticklabels を試してください。

于 2020-07-05T17:13:49.740 に答える
5

の場合、これらを使用して回転できます( @Amanの回答seaborn.heatmapに基づく)

pandas_frame = pd.DataFrame(data, index=names, columns=names)
heatmap = seaborn.heatmap(pandas_frame)
loc, labels = plt.xticks()
heatmap.set_xticklabels(labels, rotation=45)
heatmap.set_yticklabels(labels[::-1], rotation=45) # reversed order for y
于 2017-10-31T16:55:49.060 に答える