mit*_*tch 5 matplotlib jupyter-notebook
我正在尝试制作一个笔记本,其中将long for循环产生的数据逐点放置在图形中。但是,在使用时%matplotlib notebook,fig.canvas.draw()图形会变得很小,直到单元格运行完毕。(实际上,我有很多这些图,当使用更多子图时,它们甚至更小。)
在这里,我的代码至少在使用(最新)jupyter-core 4.3.0和(最新)matplotlib 2.0.2的OS X上,重现了jupyter笔记本中的行为。
%matplotlib notebook
import time
import matplotlib.pyplot as plt
fig, ax = plt.subplots(1, 1)
for _ in range(5):
ax.plot([1,2,3], [1,2,3])
fig.canvas.draw()
time.sleep(1)
Run Code Online (Sandbox Code Playgroud)
在单元执行期间,我得到了这个图
当单元完成执行时(5秒后),我得到了
我希望即使在单元执行过程中也能获得更大的图像。我究竟做错了什么?
正如 ImportanceOfBeingErnest 提出的,一种解决方案是将图形创建放在自己的单元格中。
[1] %matplotlib notebook
import time
import matplotlib.pyplot as plt
[2] fig, ax = plt.subplots(1, 1)
[3] for _ in range(5):
ax.plot([1,2,3], [1,2,3])
fig.canvas.draw()
time.sleep(1)
Run Code Online (Sandbox Code Playgroud)
编辑:如果您一次运行所有单元格,则此解决方案不起作用。
| 归档时间: |
|
| 查看次数: |
658 次 |
| 最近记录: |