读取房价特征关系表(house_price.npz),并创建新画布,根据交易年份绘制饼图,并查看交易年份的分布情况
时间: 2023-07-16 14:16:24 浏览: 326
统计报表(饼图、柱图、分布图等等)
5星 · 资源好评率100%
好的,以下是代码实现:
```python
import numpy as np
import matplotlib.pyplot as plt
# 读取数据
data = np.load('house_price.npz', allow_pickle=True)
# 获取交易年份和对应的房价数据
years = data['years']
prices = data['prices']
# 统计交易年份的分布情况
year_counts = {}
for year in years:
if year in year_counts:
year_counts[year] += 1
else:
year_counts[year] = 1
# 绘制饼图
plt.figure(figsize=(8, 8))
plt.pie(year_counts.values(), labels=year_counts.keys())
plt.title('House Price Transactions by Year')
plt.show()
```
解释一下代码:
首先,我们使用 `np.load()` 函数读取了数据文件 `house_price.npz`。由于这个数据文件是经过压缩的,因此在读取时需要添加参数 `allow_pickle=True`。
然后,我们分别获取了交易年份和对应的房价数据,并统计了交易年份的分布情况。这里使用了一个字典 `year_counts` 来保存每个年份出现的次数。
最后,我们使用 `plt.pie()` 函数绘制了饼图,其中 `year_counts.values()` 返回了所有的值(即每个年份出现的次数),`year_counts.keys()` 返回了所有的键(即年份),它们分别作为参数传递给 `plt.pie()` 函数。然后,我们使用 `plt.title()` 函数设置了图表的标题,并使用 `plt.show()` 函数显示了图表。
运行代码后,你应该可以看到一张饼图,它显示了每个交易年份的分布情况。
阅读全文