Matplotlib 如何向多个单元格中的图形添加绘图命令,但仅在最后显示?

Matplotlib 如何向多个单元格中的图形添加绘图命令,但仅在最后显示?,matplotlib,jupyter-notebook,jupyter,Matplotlib,Jupyter Notebook,Jupyter,我想在Jupyter笔记本中执行以下操作: 在单元格中创建一个pyplot.figure 对于随后的每个单元格,计算值并将其绘制到同一个图形,而不显示任何内容 最后,在另一个单元格中,显示带有上一个绘图命令结果的图形 目前,在使用%matplotlib notebook时,图形总是在创建同一单元格后显示,我甚至不调用plt.show() 这不是我想要的行为。相反,我只想推迟最后一个单元格的图形显示,但图形当然应该包含在单元格之间调用的顺序绘图命令的结果。您可以使用magic命令捕获jupyt

我想在Jupyter笔记本中执行以下操作:

  • 在单元格中创建一个
    pyplot.figure
  • 对于随后的每个单元格,计算值并将其绘制到同一个图形,而不显示任何内容
  • 最后,在另一个单元格中,显示带有上一个绘图命令结果的图形
目前,在使用
%matplotlib notebook
时,图形总是在创建同一单元格后显示,我甚至不调用
plt.show()


这不是我想要的行为。相反,我只想推迟最后一个单元格的图形显示,但图形当然应该包含在单元格之间调用的顺序绘图命令的结果。

您可以使用magic命令捕获jupyter笔记本的单元格内容
%%capture
。您还可以通过放置
,隐藏特定行的任何输出在它的末尾

只需键入存储图形的变量即可显示图形,例如
fig

结合这些技术,您可以

import matplotlib.pyplot as plt
%matplotlib notebook

%%capture captured
fig, ax=plt.subplots()

ax.plot([1,2,3]);

fig  # now show the figure
在acutal笔记本中,以下哪一项可能更容易理解:


另请参见

您可以使用magic命令
%%capture
捕获jupyter笔记本的单元格内容。您还可以通过放置
,隐藏特定行的任何输出在它的末尾

只需键入存储图形的变量即可显示图形,例如
fig

结合这些技术,您可以

import matplotlib.pyplot as plt
%matplotlib notebook

%%capture captured
fig, ax=plt.subplots()

ax.plot([1,2,3]);

fig  # now show the figure
在acutal笔记本中,以下哪一项可能更容易理解:

也看到