IPython:如何在不同的单元格中显示相同的图?

mba*_*i23 6 python matplotlib ipython-notebook jupyter-notebook

一般来说,我还是IPython Notebook,Jupyter和Python的新手。

我正在使用以下代码在Jupyter笔记本中创建散点图:

import numpy as np
import matplotlib.pyplot as plt

n = 1024
X = np.random.normal(0, 1, n)
Y = np.random.normal(0, 1, n)
plt.axes([0.025, 0.025, 0.95, 0.95])
plt.scatter(X, Y, s=50)

plt.show()
Run Code Online (Sandbox Code Playgroud)

我的问题是,如何获得对绘图对象的引用,以便以后可以在笔记本中的其他单元格中使用它?另外,在再次显示之前,可能需要修改该图。

另外,我%matplotlib inline在笔记本顶部。

以下是有关我的环境的一些信息:

  • Python: 3.5.2 64位[MSC v.1900 64位(AMD64)]
  • IPython: 4.2.0
  • numpy的: 1.11.1
  • scipy: 0.17.1
  • matplotlib: 1.5.1
  • 象征: 1.0
  • 作业系统: Windows 7 6.1.7601 SP1

Rom*_*tin 6

我找到了解决办法!基本上,您创建一个图形和轴,fig, ax = plt.subplots()然后使用ax变量进行绘制(可能在多个单元格中)。在要重新绘制图形的任何单元格中,只需写入fig单元格的最后一行,从而使单元格使用更新的图形作为输出。
有关更多详细信息,请在此处查看我的答案。