利用python绘制频率分布表、频率分布图、累计频率曲线
时间: 2024-12-06 12:22:25 浏览: 152
Python绘制频率分布直方图的示例
5星 · 资源好评率100%
在Python中,我们可以利用matplotlib库以及其下的subplots模块来绘制频率分布表、直方图(频率分布图)和累积频率曲线。以下是基本步骤:
1. **频率分布表** (也叫频率分布矩阵):你可以使用pandas库的`value_counts()`函数对数据集进行计数,得到每个值出现的次数,然后将其整理成表格形式。
```python
import pandas as pd
data = [...] # 你的数据列表
frequency_table = pd.value_counts(data)
print(frequency_table)
```
2. **频率分布图** (直方图): matplotlib库中的`hist()`函数可以生成直方图,显示各个类别或数值范围内的频数。
```python
import matplotlib.pyplot as plt
plt.hist(data, bins=...); # bins指定分组的数量
plt.xlabel('数据')
plt.ylabel('频率')
plt.title('数据频率分布')
plt.show()
```
3. **累积频率曲线** (又叫累积分布函数,CDF): 可以通过`cumsum()`对频率进行累加,然后在图表上绘制线形图表示累积比例。
```python
cumulative_distribution = frequency_table.cumsum() / frequency_table.sum()
plt.plot(cumulative_distribution.index, cumulative_distribution.values, label='累积分布')
plt.xlabel('数据')
plt.ylabel('累积频率')
plt.legend()
plt.show()
```
阅读全文