我有一个创建情节的功能。该函数在循环内调用,该循环更新有关要绘制的对象的信息。在调用draw()之后,我要求用户按一个键。我遇到的问题是,当我执行程序时,绘图出现在一个新窗口中,代码执行停止,直到我关闭该窗口。只有在执行用户输入提示时才会这样。我怎么能这样做,所以我不需要关闭情节,但只需按Enter键,情节会自动更新,然后我不必关闭窗口?谢谢!
def draw(self):
#### more code
fig, ax = plt.subplots()
im = ax.imshow(p, extent=[x.min(), x.max(), y.min(), y.max()])
ax.quiver(x[skip], y[skip], dx[skip], dy[skip])
fig.colorbar(im)
ax.set(aspect=1, title='Impulse world')
print self.player
circle = plt.Circle((self.player.pos_x, self.player.pos_y), radius=25, fc='w')
plt.gca().add_patch(circle)
#### more code
plt.show()
#inside a loop
draw()
raw_input("press enter to continue...")
答案 0 :(得分:1)
您是否尝试过plt.show(block = False)?