【发布时间】:2011-03-09 12:43:04
【问题描述】:
当我尝试用 pylab 拍照时
import pylab
pylab.plot([0,1,2,3],[10,50,30,40])
pylab.savefig('graph.png')
在 wx 应用程序中,没有返回终端控件。
【问题讨论】:
标签: python wxpython matplotlib wxwidgets
当我尝试用 pylab 拍照时
import pylab
pylab.plot([0,1,2,3],[10,50,30,40])
pylab.savefig('graph.png')
在 wx 应用程序中,没有返回终端控件。
【问题讨论】:
标签: python wxpython matplotlib wxwidgets
我想你是在你的主(唯一?)线程中调用 wx 主循环。但是,您能否阐明代码 sn-p 的上下文?你如何把它变成一个“wx 应用程序”,你为什么要终端控制?例如,您是否想在屏幕上看到您的身材,同时在终端输入内容。还是您只想保存它而不显示在屏幕上?
无论如何,您提供的代码 sn-p 对我来说运行得很好,但如果我这样做了
import pylab
pylab.plot([0,1,2,3],[10,50,30,40])
pylab.savefig('graph.png')
pylab.plot()
如果我运行你的代码...
作为“python sn-p.py”,然后它只是写入文件并退出,很好。
来自“ipython -wthreads”,它显示了绘图,保存它并将控制权返回给我。
来自“ipython”,然后它就完成了它,并且永远不会返回控制权。
这是因为 pylab.plot() 调用了 GUI 的主循环(在我的例子中是 gtk,我希望 wx 也会这样做)。
【讨论】: