python - ¿Cómo superponer parcelas de diferentes celdas?
matplotlib jupyter-notebook (1)
Básicamente, hay dos formas de abordar esto.
A. Enfoque orientado a objetos
Utilice el enfoque orientado a objetos, es decir, mantenga los identificadores de la figura y / o los ejes y reutilícelos en las celdas posteriores.
import matplotlib.pyplot as plt
%matplotlib inline
fig, ax=plt.subplots()
ax.plot([1,2,3])
Luego, en una celda posterior,
ax.plot([4,5,6])
Lectura sugerida:
-
¿Cómo mantener la cifra actual cuando se usa ipython notebook con% matplotlib en línea?
-
¿Cómo agregar comandos de trazado a una figura en más de una celda, pero mostrarla solo al final?
-
¿Cómo muestro la misma figura matplotlib varias veces en una sola notebook IPython?
B. Mantenga la figura en pyplot
La otra opción es decirle al backend en línea matplotlib que mantenga las cifras abiertas al final de una celda.
import matplotlib.pyplot as plt
%matplotlib inline
%config InlineBackend.close_figures=False # keep figures open in pyplot
plt.plot([1,2,3])
Luego en una celda posterior
plt.plot([4,5,6])
Lectura sugerida:
En una de las celdas de mi cuaderno, ya tracé algo con
myplot = plt.figure() plt.plot(x,y)
Ahora, en una celda diferente, me gustaría trazar exactamente la misma figura nuevamente, pero agregar nuevas parcelas encima (similar a lo que sucede con dos llamadas consecutivas a
plt.plot()
).
Lo que intenté fue agregar lo siguiente en la nueva celda:
myplot plt.plot(xnew,ynew)
Sin embargo, lo único que obtengo en la nueva celda es la nueva trama, sin la anterior.
¿Cómo se puede lograr esto?