PyQt 和 matplotlib
Posted
技术标签:
【中文标题】PyQt 和 matplotlib【英文标题】:PyQt and matplotlib 【发布时间】:2013-01-28 09:58:47 【问题描述】:我从 PyQt 应用程序调用 matplotlib 函数 plt.show()
。我总是有警告:
QCoreApplication::exec: The event loop is already running
似乎 matplotlib 调用了一个已经启动的新 QCoreApplication 如何删除此警告? 谢谢
【问题讨论】:
不要打电话给.show()
。它启动自己的事件循环。像example 一样嵌入你的情节。
【参考方案1】:
如果您不生成多个绘图,最简单的方法是在初始化图形之前使用plt.ion()
。删除plt.show()
【讨论】:
【参考方案2】:我遇到了类似的问题。根本原因是您的 PyQt 应用程序使用了 Qt(这当然是显而易见的)。但是您尝试制作的 matplotlib 图形也使用 Qt。要知道,matplotlib 图有自己的窗口,它源自 Qt。所以有冲突。
方法 1
有几种方法可以解决它。这里解释了一种方法:
Matplotlib animation inside your own PyQt4 GUI
该链接将您引向我几天前在网上发布的 *** 问题。我试图从我自己的 PyQt 应用程序中启动 matplotlib 动画。
方法 2 第二种方法在这里解释:
Cannot move Matplotlib plot window and exit it using red X button
我希望这对您有所帮助。如果您有任何问题,请随时问我。我很乐意提供帮助。
【讨论】:
以上是关于PyQt 和 matplotlib的主要内容,如果未能解决你的问题,请参考以下文章
在一个应用程序中同时支持 PyQt4 和 PyQt5 的常用方法是啥?