Cómo agregar un título a cada subtrama

Resuelto Shailen asked hace 10 años • 10 respuestas

Tengo una figura que contiene muchas subtramas.

fig = plt.figure(num=None, figsize=(26, 12), dpi=80, facecolor='w', edgecolor='k')
fig.canvas.set_window_title('Window Title')

# Returns the Axes instance
ax = fig.add_subplot(311) 
ax2 = fig.add_subplot(312) 
ax3 = fig.add_subplot(313) 

¿Cómo agrego títulos a las subtramas?

fig.suptitleagrega un título a todos los gráficos y aunque ax.set_title()existe, este último no agrega ningún título a mis subtramas.

Gracias por su ayuda.

Editar: error tipográfico corregido sobre set_title(). Gracias Rutger Kassies

Shailen avatar Aug 11 '14 16:08 Shailen
Aceptado

ax.title.set_text('My Plot Title')Parece funcionar también.

fig = plt.figure()
ax1 = fig.add_subplot(221)
ax2 = fig.add_subplot(222)
ax3 = fig.add_subplot(223)
ax4 = fig.add_subplot(224)
ax1.title.set_text('First Plot')
ax2.title.set_text('Second Plot')
ax3.title.set_text('Third Plot')
ax4.title.set_text('Fourth Plot')
plt.show()

matplotlib agrega títulos en subtramas

Jarad avatar Aug 24 '2016 21:08 Jarad

ax.set_title()debe establecer los títulos para subtramas separadas:

import matplotlib.pyplot as plt


data = [1, 2, 3, 4, 5]

fig = plt.figure()
fig.suptitle("Title for whole figure", fontsize=16)
ax = plt.subplot(2, 1, 1)
ax.set_title("Title for first plot")
ax.plot(data)

ax = plt.subplot(2, 1, 2)
ax.set_title("Title for second plot")
ax.plot(data)

plt.show()

¿Puedes comprobar si este código funciona para ti? ¿Quizás algo los sobrescriba más tarde?

masteusz avatar Aug 11 '2014 12:08 masteusz

Una respuesta abreviada suponiendo import matplotlib.pyplot as plt:

plt.gca().set_title('title')

como en:

plt.subplot(221)
plt.gca().set_title('title')
plt.subplot(222)
etc...

Entonces no serán necesarias variables superfluas.

JMDE avatar Dec 15 '2017 09:12 JMDE