Cómo añadir título a las subtramas en Matplotlib

  1. El método set_title() para añadir el título a la subtrama en Matplotlib
  2. title.set_text() método para poner el título en subtramas en Matplotlib
  3. plt.gca().set_title() / plt.gca.title.set_text() para establecer el título en subtramas en Matplotlib

Usamos los métodos set_title(label) y title.set_text(label) para añadir títulos a las subtramas en Matplotlib.

El método set_title() para añadir el título a la subtrama en Matplotlib

Usamos el método matplotlib.axes._axes.Axes.set_title(label) para establecer el título (cadena label) para la subtrama actual Axes.

import numpy as np
import matplotlib.pyplot as plt

x = [1, 2, 3]
y = [2, 4, 6]

a=np.linspace(0,5,100)

figure, axes = plt.subplots(nrows=2, ncols=2)


axes[0, 0].plot(x, y)

axes[0, 1].plot(a, np.sin(a))
axes[1, 0].plot(a, np.cos(a))
axes[1, 1].plot(range(10))

axes[0, 0].set_title("subplot 1")

axes[0, 1].set_title("subplot 2")
axes[1, 0].set_title("subplot 3")
axes[1, 1].set_title("subplot 4")

plt.show()

figure.tight_layout()

Producción:

set_title para añadir el título a la subtrama en Matplotlib

Si queremos hacer un bucle sobre algunas subtramas y mostrarlas una a una junto con los títulos, podemos usar el siguiente código más corto:

import matplotlib.pyplot as plt
fig, ax = plt.subplots(2, 2, figsize=(6, 8)) 
x = [1, 2, 3]
y = [2, 4, 6]


for i in range(len(ax)): 
    for j in range(len(ax[i])):
        ax[i, j].plot(x, y)
        ax[i,j].set_title('Title-' + str(i) + str(j))

plt.show()
        
fig.tight_layout()

Producción:

set_title para añadir el título a la subtrama en Matplotlib - método de bucle

title.set_text() método para poner el título en subtramas en Matplotlib

También podemos añadir título a los subtramas en Matplotlib usando el método title.set_text() de forma similar al método set_title().

import numpy as np
import matplotlib.pyplot as plt
x = [1, 2, 3]
y = [2, 4, 6]

a=np.linspace(0,5,100)

figure, axes = plt.subplots(nrows=2, ncols=2)


axes[0, 0].plot(x, y)

axes[0, 1].plot(a, np.sin(a))
axes[1, 0].plot(a, np.cos(a))
axes[1, 1].plot(range(10))

axes[0, 0].title.set_text("subplot 1")

axes[0, 1].title.set_text("subplot 2")
axes[1, 0].title.set_text("subplot 3")
axes[1, 1].title.set_text("subplot 4")

plt.show()

figure.tight_layout()

Producción:

title.set_text Método para añadir título a la subtrama en Matplotlib

plt.gca().set_title() / plt.gca.title.set_text() para establecer el título en subtramas en Matplotlib

Si usa el estilo Matlab en el trazado interactivo, entonces podría usar plt.gca() para obtener la referencia de los ejes actuales del subtrama y combinar el método set_title() o title.set_text() para establecer el título de los subtramas en Matplotlib.

import matplotlib.pyplot as plt
plt.subplots(2, 2) 
x = [1, 2, 3]
y = [2, 4, 6]


for i in range(4):
    plt.subplot(2, 2, i+1)
    plt.plot(x, y)
    plt.gca().set_title('Title-' + str(i))

plt.show()

plt.tight_layout()

o,

import matplotlib.pyplot as plt
plt.subplots(2, 2) 
x = [1, 2, 3]
y = [2, 4, 6]


for i in range(4):
    plt.subplot(2, 2, i+1)
    plt.plot(x, y)
    plt.gca().title.set_text('Title-' + str(i))

plt.show()

plt.tight_layout()

Artículo relacionado - Matplotlib Subplot

  • Cómo crear diferentes tamaños de subtramas en Matplotlib