我在Jupyter笔记本的第一个单元格中有以下代码段:
import matplotlib.pyplot as plt
import pandas as pd
import ipywidgets as widgets
import numpy as np
out = widgets.Output()
data = pd.DataFrame(np.random.normal(size = 50))
plt.ioff()
with out:
fig, axes = plt.subplots()
data.hist(ax = axes)
display(fig)
plt.ion()
display(out)
如果我重新启动内核并运行第一个单元格,我会看到这个输出:
<Figure size 640x480 with 1 Axes>
但是,如果我在第一个单元格中运行第二时间,我会看到一个matplotlib图。如果我在将matplotlib导入第二个单元格之后移动所有内容,重新启动内核并重新运行整个笔记本,也会出现此行为。
这种行为的意义是否有意?
答案 0 :(得分:2)
重新排列并添加魔术命令'%matplotlib notebook'的代码对我有用。
%matplotlib notebook
import matplotlib.pyplot as plt
import pandas as pd
import ipywidgets as widgets
import numpy as np
out = widgets.Output()
plt.ioff()
fig, axes = plt.subplots()
plt.ion()
data = pd.DataFrame(np.random.normal(size = 50))
data.hist(ax = axes)
display(out)
with out:
display(fig)