用python画了4个饼图,在一张图的每个图上面都加标题的python代码是什么
时间: 2024-09-06 17:05:24 浏览: 35
在Python中,要在一个图上绘制4个饼图,并且每个饼图上面都加上标题,可以使用matplotlib库中的`subplots`函数来创建一个图形和多个子图,然后在每个子图上绘制一个饼图并添加标题。以下是具体的代码示例:
```python
import matplotlib.pyplot as plt
# 准备4组数据用于绘制4个饼图
labels = ['A', 'B', 'C', 'D']
sizes1 = [25, 35, 10, 30] # 第一个饼图的数据
sizes2 = [40, 30, 15, 15] # 第二个饼图的数据
sizes3 = [10, 20, 30, 40] # 第三个饼图的数据
sizes4 = [30, 40, 20, 10] # 第四个饼图的数据
# 创建一个图形和一个包含4个子图的网格
fig, axs = plt.subplots(2, 2, figsize=(8, 6)) # figsize定义了图形的大小
# 在每个子图上绘制饼图并添加标题
axs[0, 0].pie(sizes1, labels=labels, autopct='%1.1f%%')
axs[0, 0].set_title('饼图1')
axs[0, 1].pie(sizes2, labels=labels, autopct='%1.1f%%')
axs[0, 1].set_title('饼图2')
axs[1, 0].pie(sizes3, labels=labels, autopct='%1.1f%%')
axs[1, 0].set_title('饼图3')
axs[1, 1].pie(sizes4, labels=labels, autopct='%1.1f%%')
axs[1, 1].set_title('饼图4')
# 调整子图之间的间距
plt.tight_layout()
# 显示图形
plt.show()
```
在上述代码中,我们首先导入了`matplotlib.pyplot`模块,并准备了4组标签和数据。然后创建了一个包含2行2列共4个子图的图形。对于每个子图,我们使用`pie`方法绘制饼图,并通过`set_title`方法添加了标题。`tight_layout`方法用于调整子图之间的间距,以确保标题和饼图之间不会重叠。最后,使用`show`方法显示最终的图形。