python界面实现多张图片放在同一页面上
时间: 2023-08-15 21:19:33 浏览: 61
要在 Python 界面实现多张图片放在同一页面上,你可以使用一些第三方库,例如 Matplotlib 和 PyQt。Matplotlib 是一个 Python 的绘图库,而 PyQt 是一个 Python 的 GUI 工具包。
下面是一个简单的例子,演示如何在 PyQt 界面中显示多个 Matplotlib 图形:
```python
import sys
from PyQt5.QtWidgets import QApplication, QMainWindow, QSizePolicy, QWidget, QVBoxLayout
from matplotlib.backends.backend_qt5agg import FigureCanvasQTAgg as FigureCanvas
from matplotlib.figure import Figure
class MainWindow(QMainWindow):
def __init__(self):
super().__init__()
# 创建一个 QWidget
widget = QWidget(self)
self.setCentralWidget(widget)
# 创建一个 QVBoxLayout,并将其设置为 QWidget 的布局
layout = QVBoxLayout(widget)
# 创建两个 Figure 对象
fig1 = Figure()
fig2 = Figure()
# 在两个 Figure 中绘制图形
ax1 = fig1.add_subplot(111)
ax1.plot([1, 2, 3], [4, 5, 6])
ax2 = fig2.add_subplot(111)
ax2.plot([3, 2, 1], [6, 5, 4])
# 创建两个 FigureCanvas 对象
canvas1 = FigureCanvas(fig1)
canvas2 = FigureCanvas(fig2)
# 将两个 FigureCanvas 添加到 QVBoxLayout 中
layout.addWidget(canvas1)
layout.addWidget(canvas2)
if __name__ == "__main__":
app = QApplication(sys.argv)
window = MainWindow()
window.show()
sys.exit(app.exec_())
```
在这个例子中,我们创建了一个 QMainWindow,并将一个 QWidget 设置为其 central widget。然后,我们创建了两个 Figure 对象,并在其中绘制了图形。接着,我们创建了两个 FigureCanvas 对象,并将它们添加到 QVBoxLayout 中。最后,我们在两个 FigureCanvas 中显示了图形。
当你运行这个例子时,你会看到两个 Matplotlib 图形显示在同一个界面中。你可以根据自己的需求修改这个例子,以在同一个界面中显示更多的图形。