pyqt5 FigureCanvas
时间: 2023-08-11 08:05:16 浏览: 175
PyQt5的FigureCanvas是一个用于绘制图形的小部件。它是Matplotlib库中的一个组件,用于在PyQt5应用程序中显示Matplotlib图形。通过将FigureCanvas嵌入到PyQt5应用程序中,我们可以绘制各种图形,如折线图、散点图、柱状图等。
要使用PyQt5的FigureCanvas,首先需要安装Matplotlib库。然后,可以使用以下代码示例来创建一个简单的PyQt5应用程序,并在其中显示一个Matplotlib图形:
```python
import sys
from PyQt5.QtWidgets import QApplication, QMainWindow, QVBoxLayout, QWidget
from matplotlib.figure import Figure
from matplotlib.backends.backend_qt5agg import FigureCanvasQTAgg as FigureCanvas
class MainWindow(QMainWindow):
def __init__(self):
super().__init__()
# 创建一个Matplotlib图形
fig = Figure()
ax = fig.add_subplot(111)
ax.plot([1, 2, 3, 4, 5], [1, 2, 3, 4, 5])
# 创建FigureCanvas小部件并将其添加到主窗口
canvas = FigureCanvas(fig)
self.setCentralWidget(canvas)
if __name__ == '__main__':
app = QApplication(sys.argv)
window = MainWindow()
window.show()
sys.exit(app.exec_())
```
在上述代码中,我们创建了一个继承自QMainWindow的自定义主窗口类MainWindow。在构造函数中,我们创建了一个Matplotlib图形,并将其添加到FigureCanvas小部件中。然后,我们将FigureCanvas设置为主窗口的中央小部件,并显示主窗口。
当运行这段代码时,将显示一个简单的PyQt5应用程序窗口,并在其中绘制了一个简单的折线图。你可以根据自己的需求修改和扩展这个例子来绘制各种类型的图形。
阅读全文