Python如何画嵌套饼图
时间: 2024-03-28 17:07:21 浏览: 104
在 Python 中,你可以使用 Matplotlib 库来绘制嵌套饼图。下面是一个简单的示例代码:
```python
import matplotlib.pyplot as plt
# 数据
sizes_outer = [30, 40, 10, 20] # 外层饼图的数据
sizes_inner = [10, 15, 5] # 内层饼图的数据
# 颜色
colors_outer = ['red', 'blue', 'green', 'yellow']
colors_inner = ['pink', 'lightblue', 'lightgreen']
# 绘制外层饼图
fig, ax = plt.subplots()
ax.pie(sizes_outer, labels=['A', 'B', 'C', 'D'], colors=colors_outer, autopct='%1.1f%%', startangle=90)
# 绘制内层饼图
ax.pie(sizes_inner, colors=colors_inner, radius=0.75, startangle=90)
# 添加标题
ax.set_title('Nested Pie Chart')
plt.axis('equal') # 设置坐标轴比例相等,保证饼图为圆形
plt.show()
```
这段代码将绘制一个嵌套饼图,其中外层饼图有4个部分(A、B、C、D),内层饼图有3个部分。你可以根据实际需求修改数据、颜色和其他参数来绘制自己想要的嵌套饼图。
相关问题
python可视化嵌套环形饼图
以下是使用Python和Matplotlib绘制嵌套环形饼图的示例代码:
```python
import matplotlib.pyplot as plt
# 数据
labels = ['A', 'B', 'C', 'D', 'E']
outer_sizes = [30, 20, 15, 10, 25]
inner_sizes = [15, 10, 5, 5, 15]
# 颜色
outer_colors = ['#FFC107', '#2196F3', '#4CAF50', '#E91E63', '#9C27B0']
inner_colors = ['#FFEB3B', '#64B5F6', '#81C784', '#F48FB1', '#BA68C8']
# 绘图
fig, ax = plt.subplots(figsize=(8, 8))
# 外层环形饼图
ax.pie(outer_sizes, labels=labels, colors=outer_colors, startangle=90, radius=1, wedgeprops={'width': 0.4, 'edgecolor': 'white'})
# 内层环形饼图
ax.pie(inner_sizes, colors=inner_colors, startangle=90, radius=0.6, wedgeprops={'width': 0.4, 'edgecolor': 'white'})
# 标题
plt.title('Nested Ring Chart')
# 显示图形
plt.show()
```
结果:
![Nested Ring Chart](https://i.imgur.com/2hKvR84.png)
python可视化嵌套环形饼图并显示百分比
以下是使用Python和matplotlib库创建嵌套环形饼图并显示百分比的示例代码:
```python
import matplotlib.pyplot as plt
# 数据
sizes = [15, 30, 45, 10]
labels = ['A', 'B', 'C', 'D']
colors = ['#ff9999','#66b3ff','#99ff99','#ffcc99']
# 创建环形饼图
fig, ax = plt.subplots()
ax.axis('equal')
inner_circle = plt.Circle((0,0), 0.5, color='white')
ax.add_artist(inner_circle)
wedges, texts, autotexts = ax.pie(sizes, colors=colors, labels=labels, autopct='%1.1f%%', startangle=90)
# 设置字体大小
plt.setp(texts, size=14)
plt.setp(autotexts, size=12, weight='bold')
# 显示图形
plt.show()
```
在此示例中,我们使用了四个不同大小的部分来创建嵌套环形饼图,并为每个部分分配了标签和颜色。我们还使用`autopct`参数来显示每个部分的百分比,并使用`setp`函数设置文本的字体大小。最后,我们使用`plt.show()`函数显示图形。
阅读全文