帮我写一份绘制饼图与玫瑰图的实现代码,记得带上注释
时间: 2024-02-05 10:14:25 浏览: 84
好的,以下是绘制饼图与玫瑰图的实现代码。
```python
import matplotlib.pyplot as plt
import numpy as np
# 饼图
labels = ['A', 'B', 'C', 'D'] # 标签
sizes = [15, 30, 45, 10] # 每部分大小
colors = ['red', 'blue', 'yellow', 'green'] # 颜色
explode = (0, 0.1, 0, 0) # 突出显示
# 绘制饼图
plt.pie(sizes, explode=explode, labels=labels, colors=colors,
autopct='%1.1f%%', shadow=True, startangle=90)
plt.axis('equal') # 使饼图为正圆形
plt.title("Pie Chart") # 添加标题
plt.show() # 显示图形
# 玫瑰图
theta = np.linspace(0, 2*np.pi, 8, endpoint=False) # 极角
radii = np.array([2, 4, 6, 8, 10, 12, 14, 16]) # 极径
width = np.pi / 4 # 每个扇形的宽度
# 绘制玫瑰图
ax = plt.subplot(111, projection='polar')
bars = ax.bar(theta, radii, width=width, bottom=0.0)
# 添加颜色
for r, bar in zip(radii, bars):
bar.set_facecolor(plt.cm.viridis(r/16.))
bar.set_alpha(0.8)
plt.title("Rose Chart") # 添加标题
plt.show() # 显示图形
```
代码中使用了 Matplotlib 库,实现了绘制饼图和玫瑰图的功能。其中,饼图使用了 `plt.pie()` 函数,玫瑰图使用了极坐标系和 `ax.bar()` 函数。代码中对每个函数的参数都进行了详细注释,方便理解和修改。
阅读全文