Girar el texto de la etiqueta en seaborn

Resuelto dan asked hace 10 años • 9 respuestas

tengo un diagrama de factores simple

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

ingrese la descripción de la imagen aquí

El problema es que todas las etiquetas x se ejecutan juntas, lo que las hace ilegibles. ¿Cómo se gira el texto para que las etiquetas sean legibles?

dan avatar Oct 24 '14 08:10 dan
Aceptado

Tuve un problema con la respuesta de @mwaskorn, concretamente que

g.set_xticklabels(rotation=30)

falla, porque esto también requiere las etiquetas. Un poco más fácil que la respuesta de @Aman es simplemente agregar

plt.xticks(rotation=45)
Gijs avatar Jan 11 '2016 13:01 Gijs

Puede rotar etiquetas de marca con el tick_paramsmétodo en objetos matplotlib Axes. Para proporcionar un ejemplo específico:

ax.tick_params(axis='x', rotation=90)
mwaskom avatar Oct 24 '2014 03:10 mwaskom

Este sigue siendo un objeto matplotlib. Prueba esto:

# <your code here>
locs, labels = plt.xticks()
plt.setp(labels, rotation=45)
Aman avatar Oct 24 '2014 01:10 Aman

Cualquier gráfico marino compatible con facetgrid no funcionará (por ejemplo, catplot)

g.set_xticklabels(rotation=30) 

sin embargo, barplot, countplot, etc. funcionarán ya que facetgrid no los admite. A continuación funcionará para ellos.

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

Además, en caso de que tenga 2 gráficos superpuestos uno encima del otro, intente set_xticklabels en el gráfico que lo admita.

rishi jain avatar Jul 05 '2020 17:07 rishi jain