# 创建一个Figure和一个Axes
fig = Figure()
ax = fig.subplots()
fig.patch.set_alpha(0)
# 创建饼图数据
labels = ['1', '2', '3', '4', '5', '6']
sizes = [15, 30, 20, 10,10,15]
explode = (0, 0.1, 0, 0,0,0) # 弹出第二个部分
# 使用hls_palette生成颜色,并传递到pie函数
# 深蓝色款
# colors =sns.color_palette("Blues_d",len(sizes))
# 绿色款
# colors = sns.color_palette("ch:2.5,-.2,dark=.3")
# colors = sns.color_palette(palette='Accent')
colors = sns.color_palette(n_colors=21,desat=0.2)
# 使用Axes实例创建饼图
ax.pie(sizes, explode=explode, labels=labels,colors=colors, autopct='%1.1f%%', radius=1.2,shadow=False, startangle=90,textprops={'fontsize':10, 'color': 'white'})
# 创建FigureCanvas
canvas = FigureCanvas(fig)
fig.patch.set_facecolor('none')
ax.set_aspect('equal')
canvas.setStyleSheet("background-color: transparent;")
width, height = self.graphicsView.width(), self.graphicsView.height()
canvas.resize(220, 200)
canvas.setGeometry(canvas.geometry())
self.scene = QGraphicsScene() # 创建一个场景
self.scene.addWidget(canvas) # 将图形元素添加到场景中
self.graphicsView.setVerticalScrollBarPolicy(Qt.ScrollBarAlwaysOff)
self.graphicsView.setHorizontalScrollBarPolicy(Qt.ScrollBarAlwaysOff)
self.graphicsView.setScene(self.scene) # 将创建添加到图形视图显示窗口
plt 饼状图嵌入pyqt页面
最新推荐文章于 2024-07-04 04:31:34 发布