[WIN Python] 小记在pyside2 上用matplotlib作图

小白学习pyside2 和matplotlib

今天遇到了该怎么在pyside2 上用matplotlib 作图,卡了半天终于成功了

首先写一个继承FigureCanvas的类

from matplotlib.backends.backend_qtagg import (
    FigureCanvas, NavigationToolbar2QT as NavigationToolbar)

class Graph(FigureCanvas):
    def __init__(self):
        self.fig_show = Figure()  # 创建 figure 对象
        super().__init__(self.fig_show) ##这个一定要有!

然后在调用的时候,就可以啦!太难了,太难了

from PySide2 import QtWidgets

class MainWindow(QtWidgets.QWidget):

    def __init__(self):
        super().__init__()
        
        # 创建其他Qt控件
        okButton = QtWidgets.QPushButton("OK")
        lineEdit = QtWidgets.QLineEdit('点击信息')

        # 水平layout里面放 edit 和 button
        hbox = QtWidgets.QHBoxLayout()
        hbox.addWidget(lineEdit)
        hbox.addWidget(okButton)

        self.gp = Graph() # 调用

        # 垂直layout里面放 pyq
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 如何在 PySide2 中使用 Matplotlib? 在 PySide2 中使用 Matplotlib 需要先安装 Matplotlib,然后在 PySide2 程序中引入 Matplotlib 模块,通过创建 Matplotlib 的 Figure 对象和 AxesSubplot 对象来进行图像绘制操作。 ### 回答2: Pyside2是一个Python GUI开发框架,它可以用于Python GUI应用程序的开发和设计。而matplotlib是一个Python数据可视化库,它可以用于绘制各种类型的图表。当我们使用PySide2开发应用时,我们经常需要将matplotlib集成到应用程序中。下面是如何在PySide2中嵌入matplotlib的步骤: 第一步:安装matplotlibPySide2库 在使用matplotlib之前,你需要先安装PySide2matplotlib库。 这可以通过pip命令完成: ```python pip install PySide2 pip install matplotlib ``` 当然,你也可以在anaconda环境下安装。 第二步:创建一个空白的PySide2应用程序 接下来,你需要创建一个PySide2应用程序来嵌入matplotlib。你可以使用Qt Designer来创建一个空白窗口或者在PySide2中直接编写代码。 第三步:创建一个matplotlib figure 接下来,你需要在PySide2应用程序中创建一个matplotlib figure,并将其绘制到Canvas上。你可以使用如下代码: ```python from matplotlib.figure import Figure from matplotlib.backends.backend_qt5agg import FigureCanvasQTAgg as FigureCanvas # 创建Figure figure = Figure() # 创建Canvas canvas = FigureCanvas(figure) ``` 第四步:在figure上绘制图形 接下来,你需要在figure上绘制你想要的图形。可以是柱形图、折线图等。 ```python # 绘制柱形图 import numpy as np x = np.array([1, 2, 3, 4, 5]) y = np.array([2, 4, 6, 8, 10]) ax = figure.add_subplot(111) ax.bar(x, y) ax.set_title("Bar chart") ``` 第五步:将Canvas添加到PySide2应用程序中 最后,你需要将Canvas添加到PySide2应用程序的窗口中。你可以使用如下代码: ```python # 添加到布局中 layout.addWidget(canvas) # 显示界面 window.show() ``` 上述代码中的layout为PySide2应用程序中的布局管理器,window为PySide2应用程序的主窗口。 这样,你就可以成功地将matplotlib嵌入到PySide2应用程序中了。当然,你还可以对绘图进行更多的设置和调整,比如:设置X轴、Y轴标签、颜色等。 ### 回答3: 在Python中,Matplotlib是一个非常强大的绘图库,它可以用于绘制各种类型的图像和图表。在使用Matplotlib时,有时需要将它嵌入到GUI应用程序中,以便用户可以通过应用程序与图像进行交互。而Pyside2是一种Python GUI工具包,它允许开发人员使用Qt框架创建功能强大的GUI应用程序。在本文中,我们将介绍如何使用Pyside2嵌入Matplotlib,以便开发人员可以创建自定义GUI应用程序。 在使用Pyside2嵌入Matplotlib之前,需要安装Pyside2Matplotlib库。可以使用pip或conda安装这两个库。安装完成后,就可以开始在Pyside2应用程序中使用Matplotlib了。 一个简单的例子是创建一个Qt MainWindow并将Matplotlib嵌入其中。可以通过以下代码来实现: ``` python from PySide2.QtWidgets import QApplication, QMainWindow, QWidget, QVBoxLayout from matplotlib.backends.backend_qt5agg import FigureCanvasQTAgg as FigureCanvas from matplotlib.figure import Figure import sys class MainWindow(QMainWindow): def __init__(self): super().__init__() # 创建Matplotlib图表 self.plotWidget = QWidget(self) self.setCentralWidget(self.plotWidget) self.plotCanvas = FigureCanvas(Figure(figsize=(5, 3))) lay = QVBoxLayout(self.plotWidget) lay.addWidget(self.plotCanvas) # 绘制数据到Matplotlib图表 ax = self.plotCanvas.figure.subplots() ax.plot([0, 1, 2, 3, 4, 5], [0, 1, 2, 3, 4, 5]) ax.set_title("Matplotlib图表") if __name__ == "__main__": app = QApplication(sys.argv) window = MainWindow() window.show() sys.exit(app.exec_()) ``` 在这个例子中,我们创建了一个继承自QMainWindow的自定义Qt主窗口,并将Matplotlib图表嵌入其中。Matplotlib图表使用FigureCanvas来渲染,然后通过布局管理器添加到Qt主窗口中。最后,在Matplotlib图表中使用subplot方法绘制数据。 总之,使用Pyside2嵌入Matplotlib是一个非常有用的功能,允许开发人员创建自定义GUI应用程序并实现交互性的可视化。无论是为科学家设计的数据可视化工具,还是为工程师设计的图表报表,Pyside2嵌入Matplotlib都是非常重要的一步。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值