Python 官方文档:入门教程 => 点击学习
目录前言数据calmap最后前言 在GitHub中经常可以看到下面的日历图,可以用来表示每一天在github上的活跃程度。 类似的方法也可以用到空气质量的可视化方式中来,只要有每天
在GitHub中经常可以看到下面的日历图,可以用来表示每一天在github上的活跃程度。
类似的方法也可以用到空气质量的可视化方式中来,只要有每天的空气质量指数就可以。
我这里使用的是2020年北京市各个监测站点的空气质量观测数据,原始数据包含PM2.5,PM10,AQI指数,这里选择AQI作为示例。
这里对原始数据做了简单处理,具体过程不赘述,感兴趣的话也可以看文末获取方式。
处理后的数据形式如下:
绘制日历图可以用calmap库直接绘制,安装直接用pip。
详细可视化方法如下:
定义可视化方式
def calendar_heatmap(df, title):
# 定义颜色
color_list = ['#009966', '#FFDE33', '#FF9A32', '#CC0033', '#660099']
levels = [0, 50, 100, 150, 200, 300]
cmap = colors.ListedColORMap(color_list)
norm = colors.BoundaryNorm(levels, cmap_aqi.N)
# 绘图
fig, ax = plt.subplots(figsize=(18, 9))
calmap.yearplot(
df,
vmin=0,
vmax=300,
cmap=cmap,
norm=norm,
how=None,
year=2020,
)
cbar_ax = fig.add_axes([0.94, 0.4, 0.015, 0.2])
cb = mpl.colorbar.ColorbarBase(
cbar_ax,
cmap=cmap,
ticks=levels,
norm=norm,
orientation='vertical',
extend='neither',
extendrect=True,
extendfrac=0.15
)
# 色标
cb.set_ticks([0, 50, 100, 150, 200, 300])
cb.ax.yaxis.set_tick_params(length=0.01)
ax.set_ylabel('2020', fontdict=dict(fontsize=25, color='grey'))
# 标题
ax.set_title(f'AQI of {title}', fontweight = 'bold', fontsize = 25)
plt.savefig(f'{title}_calendar_heatmap.png')
绘图:
cp = df.resample('1d').mean().round(2)['昌平']
calendar_heatmap(cp, 'Changping')
dx = df.resample('1d').mean().round(2)['大兴']
calendar_heatmap(dx, 'DaXing')
最后也对两个测站的空气质量做了个统计
cp_bin = pd.cut(
cp,
bins=[0, 50, 100, 150, 200, 300],
right=False
).value_counts()
dx_bin = pd.cut(
dx,
bins=[0, 50, 100, 150, 200, 300],
right=False
).value_counts()
这一篇给大家简单的制作这么一个日历图,代码就放到上面了,喜欢的小伙伴记得点赞收藏,下一章见啦。
到此这篇关于使用python绘制空气质量日历图的文章就介绍到这了,更多相关Python绘制日历图内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!
--结束END--
本文标题: 使用Python绘制空气质量日历图
本文链接: https://lsjlt.com/news/117807.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
2024-03-01
2024-03-01
2024-03-01
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0