Etiquetado de subparcelas #

Etiquetar subparcelas es relativamente sencillo y varía, por lo que Matplotlib no tiene un método general para hacerlo.

Lo más simple es poner la etiqueta dentro de los ejes. Tenga en cuenta que aquí usamos pyplot.subplot_mosaic, y usamos las etiquetas de subparcelas como claves para las subparcelas, lo cual es una buena conveniencia. Sin embargo, el mismo método funciona con pyplot.subplotsclaves o que son diferentes a las que desea etiquetar la subparcela.

import matplotlib.pyplot as plt
import matplotlib.transforms as mtransforms

fig, axs = plt.subplot_mosaic([['a)', 'c)'], ['b)', 'c)'], ['d)', 'd)']],
                              constrained_layout=True)

for label, ax in axs.items():
    # label physical distance in and down:
    trans = mtransforms.ScaledTranslation(10/72, -5/72, fig.dpi_scale_trans)
    ax.text(0.0, 1.0, label, transform=ax.transAxes + trans,
            fontsize='medium', verticalalignment='top', fontfamily='serif',
            bbox=dict(facecolor='0.7', edgecolor='none', pad=3.0))

plt.show()
subparcelas de etiquetas

Es posible que prefiramos las etiquetas fuera de los ejes, pero aún alineadas entre sí, en cuyo caso usamos una transformación ligeramente diferente:

fig, axs = plt.subplot_mosaic([['a)', 'c)'], ['b)', 'c)'], ['d)', 'd)']],
                              constrained_layout=True)

for label, ax in axs.items():
    # label physical distance to the left and up:
    trans = mtransforms.ScaledTranslation(-20/72, 7/72, fig.dpi_scale_trans)
    ax.text(0.0, 1.0, label, transform=ax.transAxes + trans,
            fontsize='medium', va='bottom', fontfamily='serif')

plt.show()
subparcelas de etiquetas

Si queremos que esté alineado con el título, incorpórelo en el título o use el argumento de palabra clave loc :

fig, axs = plt.subplot_mosaic([['a)', 'c)'], ['b)', 'c)'], ['d)', 'd)']],
                              constrained_layout=True)

for label, ax in axs.items():
    ax.set_title('Normal Title', fontstyle='italic')
    ax.set_title(label, fontfamily='serif', loc='left', fontsize='medium')

plt.show()
a), Título Normal, c), Título Normal, b), Título Normal, d), Título Normal

Referencias

En este ejemplo se muestra el uso de las siguientes funciones, métodos, clases y módulos:

Tiempo total de ejecución del script: (0 minutos 1.840 segundos)

Galería generada por Sphinx-Gallery