5.2 叠加分析与缓冲区


5.2 叠加分析与缓冲区

本节摘要:叠加分析把多个图层组合出新几何。本节讲相交、并集、擦除、缓冲区——空间分析的核心运算。

本节地图

阅读完本节,你应当能够:

  1. 做叠加分析(相交/并集/擦除)
  2. 生成缓冲区
  3. 理解叠加的应用场景

概念脉络

一、叠加分析是什么

叠加分析把两个图层的几何组合,生成新几何和属性。比如用地范围和生态红线相交,得到冲突区域。

二、主要叠加操作

图 5-2 叠加分析操作

图 5-2 叠加分析操作

操作 含义 应用
Intersect 取公共部分 冲突/重叠区
Union 合并所有 完整覆盖
Erase A 减去 B 剔除区域
Buffer 周围范围 影响范围

三、PostGIS 叠加

-- 用地和生态红线相交(冲突区) SELECT ST_Intersection(a.geom, b.geom) AS conflict_geom, a.land_use, b.zone FROM land a JOIN eco_redline b ON ST_Intersects(a.geom, b.geom); -- 生成 500 米缓冲区 SELECT ST_Buffer(geom, 500) AS buffer_geom FROM roads WHERE type = 'highway';

四、缓冲区

缓冲区是几何周围一定距离的范围:

  • 点缓冲:圆形范围
  • 线缓冲:带状范围
  • 面缓冲:外扩/内缩范围

缓冲区用于影响范围分析(如道路噪声 500 米内、学校 1 公里内)。

五、叠加分析性能

叠加分析计算量大,性能注意:

  • 空间索引:先粗筛相交候选,再精确叠加
  • 简化几何:叠加前简化几何减少顶点
  • 分块处理:大区域分块叠加
  • 并行:多核或分布式并行叠加

六、应用场景

  • 用地冲突:用地范围 ∩ 生态红线 = 冲突区
  • 影响范围:道路缓冲 = 噪声影响范围
  • 可达性:设施缓冲 = 服务范围
  • 选址:多条件叠加筛选合适地块
  • 变化检测:两期数据叠加找变化

⚠️ 常见坑:叠加前不做空间索引——全表扫描慢死。先建空间索引粗筛候选,再精确叠加。

💡 关键直觉:相交取公共、并集合并、擦除剔除、缓冲生成周围范围。叠加生成新几何+属性,缓冲生成单一几何。性能靠空间索引、简化、分块、并行。

七、叠加分析的属性拼接规则

叠加操作不只是几何裁剪,还会把两个图层的属性拼到结果里,拼接规则直接影响业务统计。以相交为例:

  • 两个输入图层各带属性,结果要素继承两边属性(字段重名要处理)。
  • 一对一相交直接合并;一个面被切成多块时,每块各复制一份属性,统计时注意不重复计数。
  • 一对多相交会生成多行结果,做面积统计要按结果面积加权,不能简单求和。
-- 叠加时保留来源标识,方便统计 SELECT ST_Intersection(a.geom, b.geom) AS geom, a.parcel_id, b.zone_id, ST_Area(ST_Intersection(a.geom, b.geom)) AS area FROM parcels a JOIN zones b ON ST_Intersects(a.geom, b.geom);

八、缓冲区的端点与连接样式

ST_Buffer 有三个常用参数:距离、端点样式、连接样式。画道路缓冲时,round 连接更接近真实道路形态;miter 连接(尖角)在数据生产里更常见:

-- 圆头端点 + 圆角连接(默认,适合展示) SELECT ST_Buffer(geom, 20) FROM roads; -- 平头端点 + 直角连接(适合数据测量) SELECT ST_Buffer(geom, 20, 'endcap=flat join=mitre') FROM roads;

缓冲距离的单位和坐标系一致:3857 里是米,4326 里是度(1 度约 111 公里,不适合直接缓冲)。做米级缓冲务必先投影到米制坐标系。

九、栅格叠加与矢栅混合

叠加分析不只在矢量里做。栅格叠加是逐像元运算:把多个栅格(坡度、降雨、土地覆盖)按像元组合成新的评价栅格,常见于适宜性分析。矢栅混合时,先把矢量栅格化(polygonize 的逆过程),再统一到同一分辨率逐像元算。PostGIS 的栅格函数配合 ST_MapAlgebra 可以完成这类分析,工具链相对重,建议数据量不大时先用 QGIS 的栅格计算器验证思路。

十、一个选址叠加的完整案例

需求:给充电站选址,条件是"位于商业用地、距主干道 300 米内、不在公园绿地内"。三条条件分别对应相交、缓冲、擦除:

-- 商业用地 ∩ 主干道300米缓冲 - 公园绿地 CREATE TABLE candidate AS SELECT ST_Intersection(c.geom, b.geom) AS geom FROM ( SELECT ST_Buffer(r.geom, 300) AS geom FROM roads r WHERE r.type='主干道' ) b JOIN commercial c ON ST_Intersects(c.geom, b.geom) WHERE NOT EXISTS ( SELECT 1 FROM parks p WHERE ST_Intersects(ST_Intersection(c.geom, b.geom), p.geom) );

结果表 candidate 就是候选区,再按面积排序、叠加人口数据做优先级,就能给运营决策提供依据。叠加分析的威力正在于把多个空间条件自由组合成业务规则。

一节小结

  • 叠加分析:组合多图层生成新几何和属性。
  • 主要操作:相交(公共)、并集(合并)、擦除(差集)、缓冲(周围范围)。
  • PostGIS:ST_Intersection、ST_Union、ST_Difference、ST_Buffer。
  • 缓冲区:点圆/线带/面扩缩,用于影响范围分析。
  • 性能:空间索引粗筛、简化几何、分块、并行。
  • 应用:用地冲突、影响范围、可达性、选址、变化检测。

下一节讲网络分析和路径规划。


作者与出处
原作者: 灏天文库
来源:灏天文库
整理: 灏天文库整理
由灏天文库平台收录,内容或由平台用户上传,仅供学习交流
发布者: 作者: 灏天文库 转发
评论区 (0)
U