在PyQt5中嵌入matplotlib的例子

时间:2015-03-30 22:26:24

标签: python python-3.x matplotlib qt5 pyqt5

有人能展示一个简单的例子,其中包含在PyQt5中嵌入matplotlib的基本功能吗?

官方docs中提供了PyQt4示例。 PyQt4将很快成为outdated

  

Digia宣布将于2015年底停止对Qt v4的支持。强烈建议在所有新开发项目中使用PyQt5和Qt v5。

它可以是任何一般的例子,比如Qt5 QMainWindow / QWidget + matplotlib线图。

1 个答案:

答案 0 :(得分:3)

您可能正在寻找的内容,请访问:embedded matplotlib in PyQt。这是matplotlib开发人员之一的博客。它是为PyQt4编写的,但事实证明,只需要将所有PyQt4's更改为5并将QtGui替换为QtWidtgets。我和Ryan谈了并向他发送了更新的代码。他很高兴看到有人知道他的努力,并会更新他的tutorial

由于我遇到了同样的问题并且正在寻找一些解决方案以便开始,我发现zedcode PyQt5 Introductory Tutorial并未涵盖matplotlib但可以合并并有助于理解。

最后,让我说一下,为了让matplotlib绘制成Gui,必须做些什么。 Ryan的啧啧指出,必须建立一个正常的QWidget来保持canvas。您可以使用Qt Creator执行此操作。 gui和matplotlib加入的部分如下:

def addmpl(self, fig):
    self.canvas = FigureCanvas(fig)
    self.mplvl.addWidget(self.canvas)
    self.canvas.draw()

mplvl只是空QWidget,它获取FigureCanvas并在之后显示。 对于我自己的应用程序,我想显示一个3D图,但是有一些问题,放弃鼠标支持,所以可能会有一些问题。所有2D图都证明是完全有效的。

试一试。

基督教