Estoy un poco confundido acerca de cómo funciona este código:
fig, axes = plt.subplots(nrows=2, ncols=2)
plt.show()
¿Cómo funciona el higo, los ejes en este caso? ¿Qué hace?
Además, ¿por qué esto no funcionaría para hacer lo mismo?
fig = plt.figure()
axes = fig.subplots(nrows=2, ncols=2)
python
matplotlib
subplot
bugsyb
fuente
fuente

Respuestas:
Hay varias formas de hacerlo. El
subplotsmétodo crea la figura junto con las subtramas que luego se almacenan en laaxmatriz. Por ejemplo:Sin embargo, algo como esto también funcionará, aunque no es tan "limpio" ya que está creando una figura con subtramas y luego agrega encima de ellas:
fuente
plot(x, y)que mi trama provenga de una función definida por el usuario, que crea un gráfico con networkx. ¿Cómo usarlo?axn = ax.flatten()y luegofor axes in axn: axes.plot(x,y)fuente
axes, pero no lo que esfig. ¿Qué son?matplotlib.figure.Figureclase a través de la cual puedes manipular mucho la figura trazada. por ejemplo, puede agregar una barra de colores a una subtrama específica, puede cambiar el color de fondo detrás de todas las subtramas. puede modificar el diseño de estas subtramas o agregarles un nuevo hacha pequeña. preferiblemente puede querer un solo título principal para todas las subtramas que se pueden obtener a través delfig.suptitle(title)método. Finalmente, una vez que esté satisfecho con la trama, puede guardarla utilizando elfig.savefigmétodo. @LeevoTambién puede desempaquetar los ejes en la llamada de subtramas
Y establezca si desea compartir los ejes X e Y entre las subtramas
Me gusta esto:
fuente
Es posible que le interese el hecho de que a partir de la versión 2.1 de matplotlib, el segundo código de la pregunta también funciona bien.
Desde el registro de cambios :
Ejemplo:
fuente
lea la documentación: matplotlib.pyplot.subplots
pyplot.subplots()devuelve una tuplafig, axque se desempaqueta en dos variables usando la notaciónel código
no funciona porque
subplots()es una función quepyplotno es miembro del objetoFigure.fuente