无法移动Matplotlib绘图窗口并使用红色X按钮退出它

2024-09-28 19:18:55 发布

您现在位置:Python中文网/ 问答频道 /正文

我在Windows 10 Home上运行Python v3.5matplotlib v1.4.3。直到最近,我使用matplotlibPyQtGUI编写python脚本。“plt.show()”代码将写入另一个模块,而不是__main__。当我运行这段代码时,Matplotlib figure无法移动并使用图右侧顶部的红色按钮X退出。奇怪的是,图表显示出来了,它确实很好用。在

Matplotlib Plot

为什么会出现这种症状?我该怎么修改呢?在


Tags: 模块代码脚本homematplotlibmainwindowsshow
1条回答
网友
1楼 · 发布于 2024-09-28 19:18:55

我偶然发现了一个类似的问题。这是因为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。它们可以平稳地运行而不会相互阻碍。在

如果你还有其他问题,尽管问。我很乐意帮助你。在

相关问题 更多 >