2024-09-28 19:18:55 发布
网友
我在Windows 10 Home上运行Python v3.5和matplotlib v1.4.3。直到最近,我使用matplotlib和PyQtGUI编写python脚本。“plt.show()”代码将写入另一个模块,而不是__main__。当我运行这段代码时,Matplotlib figure无法移动并使用图右侧顶部的红色按钮X退出。奇怪的是,图表显示出来了,它确实很好用。在
Windows 10 Home
Python v3.5
matplotlib v1.4.3
matplotlib
PyQt
plt.show()
__main__
Matplotlib figure
为什么会出现这种症状?我该怎么修改呢?在
我偶然发现了一个类似的问题。这是因为matplotlib图形和PyQt GUI都运行在同一个主线程中。因为它们在主线程中,所以只有一个拥有自己的CPU。在
我试图通过将PyQT GUI或matplotlib放在另一个线程中来解决这个问题。但那不管用。PyQT和matplotlib都需要在主线程中运行。在
所以这里有一个解决办法。可以从新创建的python shell启动matplotlib图形:
import subprocess ... # When you click the button in your PyQT GUI, # Create a new process: myMatProcess = subprocess.Popen(['python', 'myGraph.py'], shell=True)
现在,您的PyQT GUI和所绘制的matplotlib图形有了自己的python解释器shell。它们可以平稳地运行而不会相互阻碍。在
如果你还有其他问题,尽管问。我很乐意帮助你。在
我偶然发现了一个类似的问题。这是因为matplotlib图形和PyQt GUI都运行在同一个主线程中。因为它们在主线程中,所以只有一个拥有自己的CPU。在
我试图通过将PyQT GUI或matplotlib放在另一个线程中来解决这个问题。但那不管用。PyQT和matplotlib都需要在主线程中运行。在
所以这里有一个解决办法。可以从新创建的python shell启动matplotlib图形:
现在,您的PyQT GUI和所绘制的matplotlib图形有了自己的python解释器shell。它们可以平稳地运行而不会相互阻碍。在
如果你还有其他问题,尽管问。我很乐意帮助你。在
相关问题 更多 >
编程相关推荐