在代码运行期间需要强制显示图形并根据需要关闭

时间:2018-10-19 22:21:25

标签: python matplotlib

我有一个绘制多个图形的python代码。相关部分是

import matplotlib.pyplot as plt
plt.ion()
for p in range(np):
    for g in range(ng):
        figs = []
        for n in range(ns):
            figs.append(plt.figure())
            gsg = # object I am working with
            cg = plt.contourf(gsg.x, gsg.y, gsg.u[:,:])
            cb = plt.colorbar()
            figs[n].suptitle(title)
            print title, gsg.u[ex_index,ex_index,:]
        go_ahead = raw_input()

在某些情况下,我不能直截了当地看所有图,因为生成了太多图,并且python开始自动关闭其中的几个图。

因此,我想要的是在内部循环中绘制ns图形,然后暂停执行(因此输入go_ahead),查看显示的图形,将其关闭在屏幕上,然后让代码转到下一批。我不知道该怎么做。

我最接近的是将plt.show(block=True)命令放在figs[n].suptitle()之后。这的确会在运行时显示一个图形,但一次只能看到一个图形。 plt.show()plt.show(block=False)在执行结束之前根本不会显示任何内容,这是我要避免的事情。

有什么想法吗?

0 个答案:

没有答案