PyQt5+matplotlib中遇到的问题

问题一、希望用一个登入主窗口打开另一个主窗口的问题

解决办法:

https://www.cnblogs.com/XJT2018/p/9873158.html

问题二、解决QMainWindow的布局问题

widget = QWidget()  # 为了布局添加widget窗口
layout = QHBoxLayout()  # 最外层水平布局(你需要使用的布局)
''' layout上添加一切你想要的控件,写一系列代码 '''
self.setCentralWidget(widget)	# widget窗口居中
widget.setLayout(layout)    # widget中应用布局

问题三、希望matplotlib使用解释器而不是命令行运行

解决办法:

https://blog.csdn.net/u011238291/article/details/79543208

问题四、matplotlib在pyqt5中使用

https://blog.csdn.net/panrenlong/article/details/80183519

重点在于

matplotlib.use("Qt5Agg")  # 声明使用QT5
from matplotlib.backends.backend_qt5agg import FigureCanvasQTAgg as FigureCanvas
from matplotlib.figure import Figure
# Gui要有一个控件位置展示图片
self.groupBox = QtWidgets.QGroupBox(self.widget)	# 我选择放在QGroupBox里面
'''
 又是一系列操作
'''
self.gridlayout = QGridLayout(self.groupBox)  # 继承容器groupBox
self.gridlayout.addWidget(self.F,0,1)	# 绘画放到布局

问题五、matplotlib坐标无法显示中文

https://blog.csdn.net/htbeker/article/details/80354978

问题六、matplotlib刷新图片

https://blog.csdn.net/qq_15627707/article/details/104398370?depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromBaidu-2&utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromBaidu-2

self.ax.clear()	# 之前的子图清理掉
'''
 又是一系列绘图操作
'''
self.fig.canvas.draw()	# 画好以后刷新绘画
self.fig.canvas.flush_events()

注意: 上面的代码在类里面,而且都是一个对象实例。如果是不同的对象实例是无法产生效果的,需要删除掉整个figure才能呈现新的(没有用删除整个figure而是在一个对象实例作画)

问题七、pyecharts没有bar的问题

https://blog.csdn.net/qq_38900565/article/details/90371954

问题八、pyqt无QtWebEngineWidgets

https://www.cnblogs.com/Yanjy-OnlyOne/p/12068344.html
好用的镜像地址
https://blog.csdn.net/shawroad88/article/details/87692142

超时处理


>pip install -i https://pypi.tuna.tsinghua.edu.cn/simple --default-timeout=100 库名

问题九、使用pyechart教程

实例
http://gallery.pyecharts.org/#/README
参数
http://pyecharts.org/#/

问题十、pyqt使用QTabWidget

self.tab = QTabWidget()
self.tab1 = QWidget()
self.tab2 = QWidget()
self.tab3 = QWidget()
self.tab.addTab(self.tab1, "地点比较")
self.tab.addTab(self.tab2, "同类比较")
self.tab.addTab(self.tab3, "时间序列")
# 之后就正常的加入tab1,tab2,tab3就好了

问题十一、主窗口和子窗口互动

解决办法:主窗口设置信号与槽,子窗口产生数据

主窗口
self.result = login()	# 生成子窗口的实例
self.result.button.clicked.connect(self.login_buttonClick)	#子窗口的信号
self.result.show()	# 显示

def login_buttonClick(self)pass

子窗口
class login(QDialog):
	pass

你可能感兴趣的:(python)