Python 在QtDesigner GUI中嵌入matplotlib图形

Python 在QtDesigner GUI中嵌入matplotlib图形,python,qt,matplotlib,pyqt5,Python,Qt,Matplotlib,Pyqt5,我试图通过在使用Qt设计器创建的Qt GUI中嵌入matplotlib图形来混淆视听。我已经能够通过Python创建我想要的图形。我已经创建了一个带有小部件的基本GUI,允许我选择/加载输入文件,并在嵌入GUI的matplotlib图形中绘制这些文件中的数据。我通过将一个名为plotwidget的空白小部件添加到GUI中,然后使用该小部件作为输入调用GraphInit类来实现这一点 我目前面临的问题是,虽然我的绘图在GUI中显示并根据需要进行更新,但它似乎没有注意在Python代码(创建Figu

我试图通过在使用Qt设计器创建的Qt GUI中嵌入matplotlib图形来混淆视听。我已经能够通过Python创建我想要的图形。我已经创建了一个带有小部件的基本GUI,允许我选择/加载输入文件,并在嵌入GUI的matplotlib图形中绘制这些文件中的数据。我通过将一个名为
plotwidget
的空白小部件添加到GUI中,然后使用该小部件作为输入调用
GraphInit
类来实现这一点

我目前面临的问题是,虽然我的绘图在GUI中显示并根据需要进行更新,但它似乎没有注意在Python代码(创建FigureCanvas的地方)或Qt Designer中的
plotWidget
小部件中为其定义的大小策略。除其他外,我一直在使用它作为这个项目的起点。然而,所有这些示例都完全从Python内部生成GUI。我怀疑我在将matplotlib图形分配给小部件时做错了什么,但我还没有弄清楚是什么

代码(已删除导入和打印代码,但添加图形的核心仍存在):


GUI是可用的。任何建议,谢谢

我检查了您的ui文件,并且
plotWidget
完全没有布局。试着给它一个,我建议一个网格布局

然后,在画布上

self.setParent(parent)
尝试将其添加到父布局:

parent.layout().addWidget(self)

极好的!非常感谢你的帮助。我意识到我需要提前给小部件一个布局,但是我错过了将画布添加到该布局的关键步骤。指向
.ui
文件的链接已断开。请在您对接受的答案进行更正后发布更新后的文件?非常感谢。我正试图利用这篇文章来学习如何做到这一点。
parent.layout().addWidget(self)