0

0

Python数据可视化:2018年北上广深空气质量分析

看不見的法師

看不見的法師

发布时间:2025-09-28 08:55:00

|

363人浏览过

|

来源于php中文网

原创

关键时刻,第一时间送达!

作者:法纳斯特

公众号:法纳斯得

就在这周偶然看到一个学弟吐槽天津的空气,不禁想起那段厚德载雾,自强不吸的日子。

无图无真相,下图为证。

立即学习Python免费学习笔记(深入)”;

Python数据可视化:2018年北上广深空气质量分析

左边的图是去年2月份的时候,这样的空气真的难得一见!

右边的是吐槽以及我个人第一次买口罩!!!

口罩用的还行,因为那个时候做课设,经常要两个校区跑,基本上空气不好我就会带上。

题目好像是有关液压及气压的传动系统,手画A0图...

这应该是快两年前的事了,时光飞逝呐。

所以这回先对2017年天津的空气质量情况进行分析,然后再是北上广深。

/ 01 / 网页分析

Python数据可视化:2018年北上广深空气质量分析

网站没有反爬,所以直接抓取信息就好了。

看见没有,妥妥的严重污染,2016年12月份买的口罩派上用场啦!

这里简单给大家科普一下有关AQI,PM2.5的知识。

Python数据可视化:2018年北上广深空气质量分析
Python数据可视化:2018年北上广深空气质量分析

又是重操旧业,我的PPT水平还是很水呢~

/ 02 / 数据获取

获取代码如下所示。

代码语言:javascript代码运行次数:0运行复制
import timeimport requestsfrom bs4 import BeautifulSoupheaders = {    'User-Agent':'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36'}for i in range(1, 13):    time.sleep(5)    # 把1转换为01    url = 'http://www.tianqihoubao.com/aqi/tianjin-2017' + str("%02d" % i) + '.html'    response = requests.get(url=url, headers=headers)    soup = BeautifulSoup(response.text, 'html.parser')    tr = soup.find_all('tr')    # 去除标签栏    for j in tr[1:]:        td = j.find_all('td')        Date = td[0].get_text().strip()        Quality_grade = td[1].get_text().strip()        AQI = td[2].get_text().strip()        AQI_rank = td[3].get_text().strip()        PM = td[4].get_text()        with open('air_tianjin_2017.csv', 'a+', encoding='utf-8-sig') as f:            f.write(Date + ',' + Quality_grade + ',' + AQI + ',' + AQI_rank + ',' + PM + '\n')

成功获取数据。

Python数据可视化:2018年北上广深空气质量分析

/ 03 / 天津

同样不上源码,这里有必要说一波,因为我觉得源码放上去排版就不好看了...

其次我要秉承以前混迹P圈(PPT)得到的优良传统,热爱分享,百度云盘你值得拥有。

所以公众号回复天气。即可获取全部可视化源码及相关文件。

以前天天去下载PPT大神的大作,然后观摩,可惜的是PPT水平还是那么菜~

01 AQI全年走势图

Python数据可视化:2018年北上广深空气质量分析

92.5是年均AQI值,从上面科普知识里可以知道,2017年天津整体空气质量只能是「良」中的下下等水平,与轻度污染近在咫尺。

02 AQI月均走势图

Python数据可视化:2018年北上广深空气质量分析

从月均的走势图就能看出,1月的空气质量最差,8月的空气质量最好,当也并不是有多好,充其量也就是个「良」!

03 AQI季度箱形图

Python数据可视化:2018年北上广深空气质量分析

箱形图,显示一组数据分散情况资料的统计图。

CopyWeb
CopyWeb

AI网页设计转换工具,可以将屏幕截图、网站URL转换为代码组件

下载

数据里有最大值、最小值、中位数和两个四分位数。

这里可以看出,2017年天津的季度AQI均值差距不是很大。

但是一、二、四季度有明显的波动,空气质量有时会变得很差。

04 PM2.5全年走势图

Python数据可视化:2018年北上广深空气质量分析

59.87是年均PM2.5值,已经远超过国家二级标准限值35了。

其实天津给我留下的印象就是天气经常灰蒙蒙,时常还会变点颜色,比如黄色~

一年下不了几次雨,及其干燥。所以那个最低值11,我猜那时候估计是刮大风。

05 PM2.5月均走势图

Python数据可视化:2018年北上广深空气质量分析

和AQI的走势差不多,同样是1月最高,8月最低。

06 PM2.5季度箱形图

Python数据可视化:2018年北上广深空气质量分析

说实话,看了这个图,我不知道天津的「大哥」及「姐姐」们是如何做到自强不吸的。

基本上四个季度都超标了,一年不超标的估计也就那么几次。

07 PM2.5指数日历图

Python数据可视化:2018年北上广深空气质量分析
Python数据可视化:2018年北上广深空气质量分析
Python数据可视化:2018年北上广深空气质量分析

日均PM2.5国家二级标准为75,从上面的热力图看,基本上轻度污染过半了。

另外一月还是重灾区,天色黄黄的...

其实每逢雾霾,基本上就是待宿舍了。而且1月份是考试月,刚好窝宿舍预习课本~

08 天津全年空气质量情况

Python数据可视化:2018年北上广深空气质量分析

「良」和「轻度污染」占了大头,「优」只能在角落里瑟瑟发抖,足以说明空气之差。

不过该上课还是要上课,谁叫那时宿舍和教室离得近(走过去5分钟不到)。

/ 04 / 北上广深

01 北上广深AQI全年走势图

Python数据可视化:2018年北上广深空气质量分析

北京月均AQI最低也就50左右,看来今年全年差不多都在「优」以下了。

不过相比前几年,京津冀空气已经好了不少(政策),真的。

上海和广州差不多,深圳与北京算是鲜明对比。

02 北上广深PM2.5全年走势图

Python数据可视化:2018年北上广深空气质量分析

北京一如既往的高调。

03 北上广深全年空气质量情况

Python数据可视化:2018年北上广深空气质量分析

深圳几乎都是「优」和「良」,上海和广州和上面说的一样,北京的「优」已经不少了。

那么你所在的城市空气质量又是如何?

相关专题

更多
python开发工具
python开发工具

php中文网为大家提供各种python开发工具,好的开发工具,可帮助开发者攻克编程学习中的基础障碍,理解每一行源代码在程序执行时在计算机中的过程。php中文网还为大家带来python相关课程以及相关文章等内容,供大家免费下载使用。

749

2023.06.15

python打包成可执行文件
python打包成可执行文件

本专题为大家带来python打包成可执行文件相关的文章,大家可以免费的下载体验。

634

2023.07.20

python能做什么
python能做什么

python能做的有:可用于开发基于控制台的应用程序、多媒体部分开发、用于开发基于Web的应用程序、使用python处理数据、系统编程等等。本专题为大家提供python相关的各种文章、以及下载和课程。

758

2023.07.25

format在python中的用法
format在python中的用法

Python中的format是一种字符串格式化方法,用于将变量或值插入到字符串中的占位符位置。通过format方法,我们可以动态地构建字符串,使其包含不同值。php中文网给大家带来了相关的教程以及文章,欢迎大家前来阅读学习。

618

2023.07.31

python教程
python教程

Python已成为一门网红语言,即使是在非编程开发者当中,也掀起了一股学习的热潮。本专题为大家带来python教程的相关文章,大家可以免费体验学习。

1262

2023.08.03

python环境变量的配置
python环境变量的配置

Python是一种流行的编程语言,被广泛用于软件开发、数据分析和科学计算等领域。在安装Python之后,我们需要配置环境变量,以便在任何位置都能够访问Python的可执行文件。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

547

2023.08.04

python eval
python eval

eval函数是Python中一个非常强大的函数,它可以将字符串作为Python代码进行执行,实现动态编程的效果。然而,由于其潜在的安全风险和性能问题,需要谨慎使用。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

577

2023.08.04

scratch和python区别
scratch和python区别

scratch和python的区别:1、scratch是一种专为初学者设计的图形化编程语言,python是一种文本编程语言;2、scratch使用的是基于积木的编程语法,python采用更加传统的文本编程语法等等。本专题为大家提供scratch和python相关的文章、下载、课程内容,供大家免费下载体验。

705

2023.08.11

Java 项目构建与依赖管理(Maven / Gradle)
Java 项目构建与依赖管理(Maven / Gradle)

本专题系统讲解 Java 项目构建与依赖管理的完整体系,重点覆盖 Maven 与 Gradle 的核心概念、项目生命周期、依赖冲突解决、多模块项目管理、构建加速与版本发布规范。通过真实项目结构示例,帮助学习者掌握 从零搭建、维护到发布 Java 工程的标准化流程,提升在实际团队开发中的工程能力与协作效率。

10

2026.01.12

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
最新Python教程 从入门到精通
最新Python教程 从入门到精通

共4课时 | 0.6万人学习

Django 教程
Django 教程

共28课时 | 3万人学习

SciPy 教程
SciPy 教程

共10课时 | 1.1万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号