Matplotlib没有交互式变化 - Canopy Ipython

时间:2013-07-17 20:19:01

标签: python matplotlib ipython

我正在尝试使用matplotlib的冠层中的ipython来准备图形(后端设置为qt)。我在行终端

中逐行编写了以下代码
import matplotlib.pyplot as plt
fig = plt.figure()
s = fig.add_subplot(1,1,1)

在第二行之后,我可以看到正在制作的数字。然而,在第三行之后,我没有看到正在创建子图。但是,如果我打印无花果,则可以在内联和图形窗口中创建子图。如果我尝试缩放,这个子图也会神奇地出现。每次我在图上画一些东西时都会发生类似的事情。显示旧版本,直到我打印图形或尝试使用GUI工具修改视图。这真的很烦人。如果有人能告诉我问题出在哪里,那就太好了。

编辑:尝试使用fig.show()无效。当我直接使用plt.plot()时,似乎没有问题。只有当我使用无花果或其任何子图时才会出现问题

2 个答案:

答案 0 :(得分:0)

类型: fig.show()当您需要更新时。{/ p>

答案 1 :(得分:0)

在交互式图表中,你应该尝试使用 fig.canvas.draw()而不是使用 fig.show()

import matplotlib.pyplot as plt
fig = plt.figure()
fig.show()
## should show an empty figure ##
s = fig.add_subplot(1,1,1)
fig.show()
## things stay unchanged ##
fig.canvas.draw()
## things should be OK now ##
相关问题