原文链接: https://yapayzekalabs.blogspot.com/2018/11/pyqt5-gui-qt-designer-matplotlib.html
Chrome翻译插件显示原文是土耳其语, 可以利用google网页翻译翻译成英语, 还是比较通顺的. 这里帮助一下英语不太好的同学.
1.0 环境配置
需求依赖: matplotlib, Pyqt5, Qt Designer, Python3
步骤 1.1 GUI搭建
使用QT designer 搭建一个GUI 示例如下
创建一个 Main Window, 里面塞一个 Widget 和 一个Pushbutton
步骤 1.2 将组建转换为mplWidget(名称为自定义python文件, 下面会解释)
如上图所示, 选中Widget之后右键选择Promote to, 之后会弹出一个窗口
点击Promoted class name, 输入你想要的名字(这里作者写的是MplWidget).
然后点击Add按钮.
然后下一步如上图所示, 选中MplWidget之后打钩, 点击Promote, 组建更新就完成了.
然后再点击保存或者按Ctrl+S 就可以获得由Qt Designer程序生成的.ui文件.
2.0 Python代码部分
首先 全部的项目需要三个文件, 分别是
- main.py 程序的主入口, 渲染GUI的代码
- mplWidget.py Matplotlib模块的部分 QT Designer会使用的代码
- qt_designer.ui 由Qt Designer生成的ui文件
步骤2.1 mplwidget.py 部分( 2020 9 14更新 经过测试这个组件的文件名必须要和步骤1.2最后一张图的hedafile部分的.h文件之前的名字一模一样(大小写敏感), 如果不这样可能编译器无法找到对应的py文件进行组件编译 感谢@dutwzc的评论)
# ------------------------------------------------- -----
# -------------------- mplwidget.py --------------------
# -------------------------------------------------- ----
from PyQt5.QtWidgets import *
from matplotlib.backends.backend_qt5agg import FigureCanvas
from matplotlib.figure import Figure
class MplWidget ( QWidget )