一、空气质量展示需求
本节以湖南省一次空气污染事件为例,结合百度天气接口,讲解空气质量数据的展示需求。
1、空气质量状况
除了表格数据,我们更希望基于 WebGIS 进行空间数据展示。通过识别空气污染的大致范围,未来可结合风力和风向数据预判空气质量变化。
二、WebGIS 展示百度天气
本文介绍空气质量等级知识,基于百度天气接口实现数据查询,并使用 Leaflet 集成百度空气质量进行可视化展示。
1、关于空气质量等级
| 空气指数 | 空气状况 | 对健康影响情况 | 建议采取的措施 |
|---|---|---|---|
| 0-50 | 优 | 空气质量令人满意,基本无空气污染,对健康没有危害 | 各类人群可多参加户外活动,多呼吸一下清新的空气。 |
| 51-100 | 良好 | 除少数对某些污染物特别敏感的人群外,不会对人体健康产生危害 | 除少数对某些对污染物特别容易过敏的人群外,其他人群可以正常进行室外活动。 |
| 101-150 | 轻度污染 | 敏感人群症状会有轻度加剧,对健康人群没有明显影响 | 儿童、老年人及心脏病、呼吸系统疾病患者应尽量减少体力消耗大的户外活动。 |
| 151-200 | 中度污染 | 敏感人群症状进一步加剧,可能对健康人群的心脏、呼吸系统有影响 | 儿童、老年人及心脏病、呼吸系统疾病患者应尽量减少外出,停留在室内,一般人群应适量减少户外运动。 |
| 201-300 | 重度污染 | 空气状况很差,会对每个人的健康都产生比较严重的危害 | 儿童、老年人及心脏病、肺病患者应停留在室内,停止户外运动,一般人群尽量减少户外运动。 |
| >300 | 严重污染 | 空气状况极差,所有人的健康都会受到严重危害 | 儿童、老年人和病人应停留在室内,避免体力消耗,除有特殊需要的人群外,一般人群尽量不要停留在室外。 |
这里说的空气指数,就是 AQI。通过百度的天气接口可以获取行政区的天气信息数据。
2、数据查询实现
在 PostgreSQL 数据库中实现空气质量查询的 SQL 语句如下:
SELECT t2.*, T.province_code, T.province_name, T.city_code, T.city_name, T.area_code, T.area_name, t1.geom, st_asgeojson(T.geom) geomJson, st_x(t1.geom) lon, st_y(t1.geom) lat
FROM biz_weather_now t2, biz_area T, biz_geographic_name t1
WHERE to_char(t2.uptime, 'YYYY-MM-DD') = '2025-10-12'
AND T.province_code = '430000'
AND T.area_name = t1.NAME
AND T.area_code = t2.location_code
AND st_contains(T.geom, t1.geom)
T.area_code;






