用pyqt的frame
时间: 2023-07-04 08:24:20 浏览: 93
基于pyqt的图像处理界面设计
好的,以下是一个将饼图嵌入到 PyQt5 的 QFrame 中的 Python 代码:
```python
import sys
import matplotlib.pyplot as plt
from matplotlib.backends.backend_qt5agg import FigureCanvasQTAgg as FigureCanvas
from PyQt5.QtWidgets import QApplication, QFrame, QHBoxLayout
# 创建 PyQt5 应用程序
app = QApplication(sys.argv)
# 创建 QFrame
frame = QFrame()
frame.setFrameShape(QFrame.StyledPanel)
# 创建 QHBoxLayout
layout = QHBoxLayout(frame)
# 数据
labels = ['A', 'B', 'C', 'D', 'E']
sizes = [15, 30, 45, 10, 5]
# 饼状图
fig = plt.figure(figsize=(5, 5), dpi=100)
ax = fig.add_subplot(111)
ax.pie(sizes, labels=labels, autopct='%1.1f%%', startangle=90)
ax.axis('equal')
# 将图形嵌入到 PyQt5 QFrame 中
canvas = FigureCanvas(fig)
layout.addWidget(canvas)
# 显示 QFrame
frame.show()
# 运行 PyQt5 应用程序
sys.exit(app.exec_())
```
运行以上代码,将会打开一个 PyQt5 窗口,其中包含了一个嵌入到 QFrame 中的饼状图。其中,`FigureCanvas` 类用于将 Matplotlib 的图形嵌入到 PyQt5 中,`QHBoxLayout` 类用于创建水平布局。
阅读全文