QGIS栅格数据分析教程:DEM地形晕渲、分类渲染与坡度计算全解析
【免费下载链接】QGISQGIS is a free, open source, cross platform (lin/win/mac) geographical information system (GIS)项目地址: https://gitcode.com/gh_mirrors/qg/QGIS
QGIS栅格数据分析是地理信息系统中应用最广泛的功能之一。本教程面向新手,带你从零开始掌握 QGIS(一款免费、开源、跨平台的地理信息系统 GIS 软件)的三大核心栅格技能:DEM 地形晕渲、分类渲染与坡度计算,无需编写代码,10 分钟即可完成第一张专业级地形图。
🗺️ 什么是栅格数据与 DEM?
在动手之前,先花 1 分钟理解两个基础概念:
- 栅格数据(Raster):由规则排列的像素网格组成,每个像素存储一个数值,如高程、温度、植被指数。常见的 DEM(数字高程模型)就是栅格数据。
- DEM(Digital Elevation Model):记录地面高程的栅格数据,是地形晕渲、坡度计算的地形分析基础。
💡 DEM 数据常见来源:SRTM、ASTER GDEM、LiDAR 点云生成的 DTM 等,文件格式多为 GeoTIFF(.tif)。
一、快速加载 DEM 数据
- 点击工具栏的添加栅格图层按钮,或打开菜单图层 → 添加图层 → 添加栅格图层
- 在文件选择框中定位到你的
.tif/.img文件 - 勾选图层后,即可在画布中预览;若显示全黑或白色,通常是渲染方式与数据范围不匹配,下一步来解决
二、DEM 地形晕渲:让平面数据立起来
地形晕渲(Hillshade)通过模拟光照在坡面上的明暗变化,把平坦的高程数据渲染出立体地形效果,是最经典的地形可视化手法。
方法 1:使用内置晕渲渲染器(即时预览)
- 双击 DEM 图层打开图层属性 → 符号化
- 渲染方式选择晕渲(Hillshade)
- 调节以下参数,效果实时刷新:
| 参数 | 含义 | 推荐值 |
|---|---|---|
| 方位角 Azimuth | 光源方向(0=正北,顺时针) | 315°(西北光) |
| 高度角 Altitude | 光源仰角 | 45° |
| 垂直夸大系数 Z Factor | 增强平缓地形的起伏感 | 1 ~ 20,视数据而定 |
该渲染器的核心实现位于 qgshillshaderenderer.h,支持双向晕渲(Multi-directional)等增强算法,可显著提升细节表现。
方法 2:处理工具箱生成晕渲栅格
需要把晕渲效果"落盘"为新图层时(例如后续叠加到高程分级图上),使用处理工具箱:
- 打开处理 → 工具箱(快捷键 Ctrl+Alt+T)
- 在GDAL 算法 → 地形分析 → 晕渲(Hillshade)中执行
- 输入 DEM 图层,设置光源方向与仰角,运行后生成新的晕渲栅格图层
晕渲算法的 Processing 封装见 qgsalgorithmhillshade.h,其单元测试位于 testqgsninecellfilters.cpp,确保算法结果经过持续验证。
🎨小技巧:将晕渲图层与下文的分级渲染图层叠加,并调整晕渲图层透明度至 40%~60%,是制作专业地形图的常用手法。
三、分类渲染:给高程数据分色分级
分类渲染(Classified)把连续的高程值划分为若干区间(如 0-500m、500-1000m……),每个区间赋予一种颜色,直观表达"哪里高、哪里低"。
最快配置步骤
- 双击 DEM 图层,渲染方式选择分类(Classified)
- 设置分级数(Interval Count):一般 5~9 级即可
- 选择分类算法:
- 等间距(Equal Interval):每级宽度相同
- 自然断点(Natural Breaks):按数据分布聚类,色彩分界更符合地形特征,推荐
- 选择调色板:绿色系、棕绿色系最贴近地形认知
- 勾选显示图例(Show legend),点击应用
📌 想按自己的高程区间手动划分?在分类设置中切换到手动(Manual),逐行输入上下限即可。
四、坡度计算:从 DEM 到坡度栅格
坡度(Slope)反映地表倾斜程度,是选址分析、水文分析、工程建设评估的关键输入。
一键执行坡度分析
- 打开处理工具箱 → GDAL 算法 → 地形分析 → 坡度(Slope)
- 输入 DEM 图层
- 选择输出单位:
- 度(Degrees):0° 水平面,90° 垂直面,最直观
- 百分比(Percent Rise):垂直高差 / 水平距离 × 100%
- 可指定输出文件名与格式(建议 GeoTIFF),点击运行
坡度算法实现位于 qgsalgorithmslope.h,采用经典的 3×3 邻域窗口计算,速度快且精度可靠。
坡度结果快速可视化
生成的坡度栅格默认是灰度图,记得给它做分类渲染(同第三节步骤):
- 0°~10°:绿色——平缓,适合建设用地
- 10°~25°:黄色——中等坡度
- 25°~40°:橙色——较陡,注意水土保持
- >40°:红色——陡坡,开发受限
五、进阶组合:晕渲 + 坡度 + 分级 三图叠一张
把三个技能串起来,就能产出一张出版级地形专题图:
- 底层:DEM分类渲染(高程分色)
- 中层:GDAL晕渲输出图层,透明度 50%
- 顶层:可选的坡度等值线或坡度过陡区域掩膜
最后通过处理 → 地图合成器(Print Layout)添加标题、指北针、比例尺,导出 PDF 或 PNG。
📚 参考资料与延伸阅读
- 栅格渲染器注册表:qgsrasterrendererregistry.cpp
- 晕渲渲染器实现:qgshillshaderenderer.cpp
- 晕渲/坡度算法测试:testqgsninecellfilters.cpp
- GDAL 栅格算法测试:test_gdal_algorithms_raster.py
- 项目主文档:README.md、安装说明 INSTALL.md
掌握 DEM 地形晕渲、分类渲染与坡度计算,你就拥有了 QGIS 栅格数据分析的"三板斧"。下一站,可以探索流向(Flow Direction)、汇水累积等更多 GDAL 地形算法,把地形分析能力扩展到水文领域!
【免费下载链接】QGISQGIS is a free, open source, cross platform (lin/win/mac) geographical information system (GIS)项目地址: https://gitcode.com/gh_mirrors/qg/QGIS
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考