python圆环图添加索引线的代码
时间: 2023-07-28 19:12:00 浏览: 122
您可以使用matplotlib中的pie函数来绘制圆环图,并使用annotate函数添加索引线。下面是一个示例代码:
import matplotlib.pyplot as plt
# 数据
sizes = [15, 30, 45, 10]
# 颜色
colors = ['#ff9999', '#66b3ff', '#99ff99', '#ffcc99']
# 圆环宽度
width = 0.5
# 绘制圆环图
fig, ax = plt.subplots()
ax.axis('equal')
pie, _ = ax.pie(sizes, radius=1, colors=colors, wedgeprops=dict(width=width, edgecolor='w'))
# 添加索引线
for i, p in enumerate(pie):
angle = (p.theta2 - p.theta1)/2. + p.theta1
x = p.r * 0.7 * np.cos(np.radians(angle))
y = p.r * 0.7 * np.sin(np.radians(angle))
if i == 0:
x -= 0.2
elif i == 2:
x += 0.2
ax.annotate(str(sizes[i]), xy=(x, y), horizontalalignment='center', verticalalignment='center')
ax.annotate('Label {}'.format(i+1), xy=(x, y), xytext=(x*1.2, y*1.2),
arrowprops=dict(facecolor='black', arrowstyle="-"), fontsize=12)
# 显示图形
plt.show()
这里使用了一个for循环来遍历每个扇形,计算出索引线的位置,并使用annotate函数添加索引线。其中,arrowprops参数用于设置箭头的样式,如颜色和形状。您可以根据需要自定义这些属性。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20241231044930.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)