如何调整这个直方图的柱状图高度显示百分比而不是频数?
时间: 2024-10-17 22:04:35 浏览: 0
要在直方图上展示每个柱子的高度为百分比而不是频数,你需要将频数除以总频数(或者总数),然后乘以100得到百分比。以下是基本步骤:
1. 首先,计算总频数(`total`)或者总数(如果数据集有单位的话)。
2. 然后,对每个频数(`hist`)进行百分比计算。
以下是一个简单的例子:
```python
# 假设 `bins` 是 bin 中心点,`hist` 是对应频率
total = sum(hist)
percentages = [freq / total * 100 for freq in hist]
# 创建一个新的直方图,把百分比作为新的数据
plt.bar(bins[:-1], percentages, width=0.2, label='Percentage')
# 显示标签和标题
plt.xlabel('Categories')
plt.ylabel('Percentage')
plt.title('Histogram of Categories (Percentages)')
```
这将创建一个新直方图,其中每个柱子的高度表示相应类别占总比例的百分比。别忘了在适当的位置添加轴标签和图表标题。
阅读全文