Matplotlib-强制显示图,然后返回主代码

这是我所追求的MWE,适合于以下问题:


from matplotlib.pyplot import plot, draw, show


def make_plot():

    plot([1,2,3])

    draw()

    print 'continue computation'


print('Do something before plotting.')

# Now display plot in a window

make_plot()


answer = raw_input('Back to main and window visible? ')

if answer == 'y':

    print('Excellent')

else:

    print('Nope')


show()

我想要的是:调用该函数进行绘图,出现绘图窗口,然后返回到提示,因此我可以输入一些值(基于刚刚显示的图像)并继续执行代码(然后,窗口可以关闭或保留在那儿,我不在乎)。


相反,我得到的是带有绘图的窗口仅在代码完成之后出现,这是不好的。


素胚勾勒不出你
浏览 183回答 3
3回答

幕布斯6054654

我不能Canopy(至少现在)不能使用它,但是我可以使代码像我想要使用GeanyIDE那样运行。这是对我有用的代码,它是对问题中第一部分代码的很小的修改,其中show()命令从文件末尾移到命令的正下方make_plot():from matplotlib.pyplot import plot, draw, showdef make_plot():&nbsp; &nbsp; plot([1,2,3])&nbsp; &nbsp; draw()&nbsp; &nbsp; print 'Plot displayed, waiting for it to be closed.'print('Do something before plotting.')# Now display plot in a windowmake_plot()# This line was moved up <----show()answer = raw_input('Back to main after plot window closed? ')if answer == 'y':&nbsp; &nbsp; print('Move on')else:&nbsp; &nbsp; print('Nope')它并没有完全满足我的要求,但是已经足够接近:它向用户显示了一个绘图,等待直到该绘图窗口关闭,然后继续执行代码。理想情况下,它不必等到绘图窗口关闭才能继续执行代码,但是总比没有好。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python