Cómo cambiar la separación entre las tags de tick y las tags de eje en Matplotlib

Mis tags de eje a menudo no se ven bien (demasiado cerca de las tags de marca) cuando uso Matplotlib.

imagen de prueba

¿Cómo establecer la distancia entre las tags de tick y la etiqueta de eje? Solo necesito ampliar la distancia entre la etiqueta “Número de estrellas” y las tags correspondientes. Tal vez latex \vspace{} esté funcionando pero no sé cómo implementarlo. fig.subplots_adjust(left=) no es una solución.

Para mover la etiqueta del eje más lejos del eje, puede incluir un argumento para el parámetro opcional del labelpad de labelpad del método correspondiente utilizado para establecer la etiqueta, es decir, ax.set_ylabel() o ax.set_xlabel() . Este parámetro toma un escalar que es el espacio entre el eje y la etiqueta dada en puntos .

Para lograr el mismo efecto al usar el método drawparallels() del drawparallels() base , creo que puede incluir un argumento para los parámetros xoffset o yoffset , según el eje que desee modificar la ubicación del texto. Los argumentos de estos parámetros tienen “unidades” de ancho de mapa , lo que significa que, por ejemplo, xoffset=0.05 hace que el desplazamiento de las marcas x sea 5% del ancho del mapa.

Esta es una pregunta realmente subjetiva, pero voy a intentarlo de todos modos:

El figsize figsize toma el ancho y la altura de la figura en pulgadas.

El papel A4 es 8.3 “por 11.7”. Así que digamos, por el bien de la discusión, usted quiere márgenes de 1 “.

 paperheight = 11.7 paperwidth = 8.3 margin = 1.0 fig = plt.figure(figsize=(paperwidth - 2*margin, paperheight - 2*margin)) # plotting stuff fig.tight_layout() fig.savefig(...) 

La llamada a tight_layout() dará a las tags un poco más de espacio y se asegurará de que todo se expanda hacia los bordes de la figura tanto como sea posible.