Cómo evitar la superposición de tags de eje x en sns.countplot

Para la ttwig

sns.countplot(x="HostRamSize",data=df) 

Obtuve la siguiente gráfica con la etiqueta del eje x que se mezcla, ¿cómo puedo evitar esto? ¿Debo cambiar el tamaño de la gráfica para resolver este problema?

introduzca la descripción de la imagen aquí

Tener una serie ds como esta

 import pandas as pd import seaborn as sns import matplotlib.pyplot as plt import numpy as np; np.random.seed(136) l = "1234567890123" categories = [ l[i:i+5]+" - "+l[i+1:i+6] for i in range(6)] x = np.random.choice(categories, size=1000, p=np.diff(np.array([0,0.7,2.8,6.5,8.5,9.3,10])/10.)) ds = pd.Series({"Column" : x}) 

Hay varias opciones para hacer que las tags de los ejes sean más legibles.

Cambiar el tamaño de la figura

 plt.figure(figsize=(8,4)) # this creates a figure 8 inch wide, 4 inch high sns.countplot(x="Column", data=ds) plt.show() 

Girar las marcas

 ax = sns.countplot(x="Column", data=ds) ax.set_xticklabels(ax.get_xticklabels(), rotation=40, ha="right") plt.tight_layout() plt.show() 

introduzca la descripción de la imagen aquí

Disminuir el tamaño de letra

 ax = sns.countplot(x="Column", data=ds) ax.set_xticklabels(ax.get_xticklabels(), fontsize=7) plt.tight_layout() plt.show() 

introduzca la descripción de la imagen aquí

Por supuesto, cualquier combinación de esos funcionaría igual de bien.

Configuración de rcParams

El tamaño de la figura y el tamaño de fuente xlabel se pueden configurar globalmente usando rcParams

 plt.rcParams["figure.figsize"] = (8, 4) plt.rcParams["xtick.labelsize"] = 7 

Esto podría ser útil para poner encima de un cuaderno juypter de modo que esas configuraciones se apliquen a cualquier figura generada dentro. Desafortunadamente, rotar las tags xticklabels no es posible usando rcParams.

Creo que vale la pena señalar que, naturalmente, las mismas estrategias también se aplicarían a la gráfica de barras marítima, la gráfica de barras matplotlib o pandas.bar.

Si solo quiere asegurarse de que las tags de xticks no estén apretadas juntas, puede establecer el tamaño correcto de higo y probar fig.autofmt_xdate() .

Esta función alineará y rotará automáticamente las tags.