我还没有能够使用谷歌找到我的问题的答案,所以我会在这里发新帖。
我使用matplotlib和ipython。我将使用一个简单的脚本(称为a.py)来演示我的问题。
#/usr/bin/python3
import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(0, 10, 100)
y = np.cos(2*x)
plt.plot(x,y)
plt.show()
我可以使用命令"运行a.py"在ipython中运行此脚本(以" ipython -pylab"开头)。它将创建一个带有正确图形的图形窗口。但是,如果我修改代码;让我们说将y改为np.sin(x),然后保存脚本。如果我通过调用&#34再次运行脚本;运行a.py",图形窗口不会改变。此图中不会添加任何新行。这是一个错误还是我误解了什么?我是Python / Ipython / matplotlib的新手。
我使用Mac OS Yosemite,Python34,py34-ipython,py34-matplotlib。谢谢你的日志。
----更新-----
如果我使用 plt.savefig(" C.PDF&#34) 代替 plt.show()
ipython和%run命令的工作方式与我认为应该的方式相同;即,如果我更新脚本,并且%再次运行a.py,则对脚本的更改应反映在图中。
---------更多更新--------
我发现的一个解决方案是使用命令" plt.close()"在任何密谋之前。