matplotlib饼状图显示绝对值
时间: 2024-10-04 13:01:24 浏览: 35
在matplotlib库中创建饼状图通常用于展示数据的比例分布,如果需要显示每个部分的具体数值(即绝对值),可以结合文本标签一起呈现。下面是一个简单的例子:
```python
import matplotlib.pyplot as plt
# 假设我们有以下数据
labels = ['A', 'B', 'C', 'D']
sizes = [50, 30, 15, 5] # 这些是各个部分的绝对值
# 创建饼状图
fig1, ax1 = plt.subplots()
ax1.pie(sizes, labels=labels, autopct='%1.1f%%', startangle=90) # autopct表示百分比,%1.1f%%会保留一位小数
ax1.axis('equal') # 确保饼状图是圆形的
# 添加每个部分的绝对值文本
explode = (0.1, 0, 0, 0) # 提升一部分出来,使得其文字更容易看到
patches, texts, autotexts = ax1.pie(sizes, explode=explode, labeldistance=1.1, textprops={'size': 8})
for t in texts:
t.set_text(str(int(t.get_text()))) # 转换成整数并添加到文本上
plt.title('饼状图示例 - 绝对值')
plt.show()
```
在这个例子中,`autopct`参数用于显示每部分的百分比,而`texts`和`autotexts`则分别用于获取每个部分的文字标签和自动计算的部分百分比。将百分比转换为整数并设置文本属性,即可得到显示绝对值的效果。
阅读全文