python title - ¿Hay alguna forma de dibujar un cuadro de subtítulos en matplotlib?




position subplot (3)

¿Hay alguna función para dibujar un cuadro de título debajo de una figura / gráfico usando matplotlib? He buscado en google y no he encontrado ninguna de esas funciones.

algo como lo que se muestra en la imagen sería genial.


Answers

Puede usar la función de legend ( pylab.legend ). Si lo quiere fuera de los ejes, puede pasarle una ubicación específica (argumento de palabra clave loc ).

Editar: la función de leyenda toma un argumento de title , que podría ayudar a obtener lo que desea. Sin embargo, para una leyenda sin ninguna leyenda, la respuesta de Pablo es más adecuada.


Utilice pyplot.text . Aquí hay un código de muestra:

from matplotlib import pyplot as plt
import numpy as np

x = np.arange(0,3,.25)
y = np.sin(x)
txt = '''
    Lorem ipsum dolor sit amet, consectetur adipisicing elit,
    sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
    Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris
    nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in
    reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla
    pariatur. Excepteur sint occaecat cupidatat non proident, sunt in
    culpa qui officia deserunt mollit anim id est laborum.'''

fig = plt.figure()
ax1 = fig.add_axes((.1,.4,.8,.5))
ax1.bar(x,y,.2)
fig.text(.1,.1,txt)
plt.show()

Produce esto:

Si desea el ajuste automático de palabras, eche un vistazo a esta publicación .

No estoy seguro de poder ayudarte a justificarlo por completo.


Substr () normalmente (es decir, PHP y Perl) funciona de esta manera:

s = Substr(s, beginning, LENGTH)

Así que los parámetros son beginning y LENGTH .

Pero el comportamiento de Python es diferente; Se espera que comience y una después de FIN (!). Esto es difícil de detectar por los principiantes. Así que el reemplazo correcto para Substr (s, begin, LENGTH) es

s = s[ beginning : beginning + LENGTH]




python matplotlib