脚本之家,脚本语言编程技术及教程分享平台!
分类导航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|shell|

服务器之家 - 脚本之家 - Python - 使用Python绘制空气质量日历图

使用Python绘制空气质量日历图

2022-12-22 13:50蚂蚁ailing Python

这篇文章主要介绍了使用Python绘制空气质量日历图,文章基于Python绘制的相关知识展开对空气质量日历图的绘制,感兴趣的小伙伴可以参考一下

前言

在github中经常可以看到下面的日历图,可以用来表示每一天在github上的活跃程度。

使用Python绘制空气质量日历图

类似的方法也可以用到空气质量的可视化方式中来,只要有每天的空气质量指数就可以。

 

数据

我这里使用的是2020年北京市各个监测站点的空气质量观测数据,原始数据包含PM2.5,PM10,AQI指数,这里选择AQI作为示例。

这里对原始数据做了简单处理,具体过程不赘述,感兴趣的话也可以看文末获取方式。

处理后的数据形式如下:

使用Python绘制空气质量日历图

 

calmap

绘制日历图可以用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')

使用Python绘制空气质量日历图

dx = df.resample('1d').mean().round(2)['大兴']
calendar_heatmap(dx, 'DaXing')

使用Python绘制空气质量日历图

最后也对两个测站的空气质量做了个统计

cp_bin = pd.cut(
  cp,
  bins=[0, 50, 100, 150, 200, 300],
  right=False
).value_counts()

使用Python绘制空气质量日历图

dx_bin = pd.cut(
dx,
bins=[0, 50, 100, 150, 200, 300],
right=False
).value_counts()

使用Python绘制空气质量日历图

 

最后

这一篇给大家简单的制作这么一个日历图,代码就放到上面了,喜欢的小伙伴记得点赞收藏,下一章见啦。

到此这篇关于使用Python绘制空气质量日历图的文章就介绍到这了,更多相关Python绘制日历图内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

原文链接:https://www.cnblogs.com/123456feng/p/16112309.html

延伸 · 阅读

精彩推荐
  • PythonPython内建函数之raw_input()与input()代码解析

    Python内建函数之raw_input()与input()代码解析

    这篇文章主要介绍了Python内建函数之raw_input()与input()代码解析,具有一定参考价值,需要的朋友可以了解下。...

    terry012032152020-12-13
  • Pythonpython 时间 T 去掉 带上ms 毫秒 时间格式的操作

    python 时间 T 去掉 带上ms 毫秒 时间格式的操作

    这篇文章主要介绍了python 时间 T 去掉 带上ms 毫秒 时间格式的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...

    拓宽视野12372021-10-08
  • Python用 python 进行微信好友信息分析

    用 python 进行微信好友信息分析

    这篇文章主要介绍了用 python 进行微信好友信息分析的示例,帮助大家更好的理解和使用python,感兴趣的朋友可以了解下...

    步平凡5312021-11-22
  • Python浅谈python学习中出现的各种问题(新手必看)

    浅谈python学习中出现的各种问题(新手必看)

    下面小编就为大家带来一篇浅谈python学习中出现的各种问题(新手必看)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看...

    Python教程网5742020-11-07
  • Pythonpython实现简单聊天功能

    python实现简单聊天功能

    这篇文章主要为大家详细介绍了python实现简单聊天功能,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...

    Li-boss7062021-12-11
  • Pythonpython对于requests的封装方法详解

    python对于requests的封装方法详解

    今天小编就为大家分享一篇python对于requests的封装方法详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...

    可昌8742021-05-11
  • Python基于Python实现丝滑换装视频剪辑

    基于Python实现丝滑换装视频剪辑

    看到人家用PR什么编辑软件做这种丝滑一键换装的视频,自己也想尝试一下。不过PR这破玩意太难用了,还不如敲代码来的省事。所以本文将利用Python算法实...

    Mr数据杨11422022-11-21
  • Python利用Python实现颜色色值转换的小工具

    利用Python实现颜色色值转换的小工具

    最近一个朋友说已经转用Zeplin很久了。Zeplin的设计稿展示页面的颜色色值使用十进制的 RGB 表示的,在 Android 中的颜色表示大多情况下都需要十六进制的 ...

    张瑞Jerrysher7912020-09-11