地理信息系统空间分析实验教程
前言
地理信息系统空间分析是GIS的核心与灵魂,它超越了简单的地图制作和数据显示,通过地理模型和算法,对空间数据进行处理、分析、建模和可视化,以解决现实世界中的复杂问题,本教程将以业界主流软件 ArcGIS Pro 为操作平台,结合理论讲解与动手实践,带你一步步走进空间分析的世界。

教程目标:
- 理解空间分析的基本概念、原理和应用领域。
- 熟练掌握ArcGIS Pro软件的基本操作和空间分析工具。
- 能够独立设计和完成一个完整的空间分析项目。
- 培养利用空间思维解决实际问题的能力。
适用对象:
- 地理信息科学、城乡规划、环境科学、资源勘查、公共管理等专业的本科生和研究生。
- 希望学习GIS技能的科研人员、政府工作人员和行业从业者。
- 所有对GIS空间分析感兴趣的初学者。
软件与环境:
- 主软件: ArcGIS Pro (推荐使用最新版本,如2.8或更高)
- 扩展模块: Spatial Analyst (必备)
- 数据: 教程将提供部分示例数据,同时也会指导如何获取公开的地理数据。
第一部分:基础准备
GIS空间分析概览与ArcGIS Pro入门
实验目标:

- 了解GIS空间分析的定义、类型和应用。
- 熟悉ArcGIS Pro的用户界面和工作空间。
- 掌握地图文档的创建、数据加载和基本浏览。 **
-
空间分析理论入门:
- 什么是空间分析? (基于位置的分析、基于分布的分析、基于格局的分析、基于关系的分析)
- 空间分析的类型:
- 矢量分析: 叠加分析、缓冲区分析、网络分析。
- 栅格分析: 距离分析、表面分析、密度分析、地图代数。
- 应用领域: 环境保护(选址、污染扩散)、城市规划(服务区分析)、公共安全(应急响应)、商业选址(市场分析)等。
-
ArcGIS Pro初体验:
- 启动与创建项目: 打开ArcGIS Pro,创建一个新的“地图”项目。
- 界面熟悉: 识别功能区、目录窗格、内容窗格、视图(2D/3D/场景)。
- 数据加载:
- 将本地数据(如Shapefile、Geodatabase)添加到地图。
- 连接并添加在线地图服务(如底图、影像图层)。
- 数据浏览与查询:
- 使用缩放、平移工具浏览地图。
- 使用“要素”窗格查看和编辑单个要素的属性。
- 使用“选择”工具和“按属性选择”功能查询要素。
实验报告:
- 简述你对空间分析的理解,并列举2-3个你身边可以用空间分析解决的实际问题。
- 截图展示你的ArcGIS Pro工作界面,并标注出主要功能区域。
- 加载一个你所在城市的行政区划图和路网图,并尝试查询某个特定区域内的所有道路。
第二部分:核心空间分析技术
矢量数据空间分析(一)—— 缓冲区与叠加分析
实验目标:

- 掌握缓冲区分析的基本原理和应用。
- 掌握叠加分析的三大类型(交集、并集、差异)及其应用。
- 理解并解决“多环缓冲区”和“融合”等常见问题。 **
-
缓冲区分析:
- 场景: 在一条河流两岸建立生态保护区,要求保护区宽度为500米。
- 操作:
- 使用“分析”选项卡下的“缓冲”工具。
- 设置输入要素(河流线)、距离(500米)、输出要素类。
- 进阶: 创建多环缓冲区(如100m, 300m, 500m),并使用“融合”工具将相同距离的缓冲区合并。
- 场景: 为学校、医院等公共设施划定服务范围。
-
叠加分析:
- 交集:
- 场景: 找出同时位于“生态保护区”和“基本农田保护区”内的区域,这些是需要重点监控和管理的冲突区域。
- 操作: 使用“交集”工具,输入两个多边形图层。
- 并集:
- 场景: 将两个相邻的行政区域合并,形成一个更大的统计区域。
- 操作: 使用“联合”工具。
- 差异:
- 场景: 从“城市规划区”中扣除“自然保护区”,得到可用于城市建设的土地范围。
- 操作: 使用“擦除”工具。
- 交集:
实验报告:
- 描述缓冲区分析的原理,并说明“融合”操作在其中的重要性。
- 以“为新建高速公路选线避开居民区和水源地”为例,设计一个利用叠加分析的工作流程。
- 完成上述任一场景的操作,并附上输入数据、中间过程和最终结果的截图,并简要解释结果的意义。
栅格数据空间分析(一)—— 核心概念与距离分析
实验目标:
- 理解栅格数据模型及其在空间分析中的优势。
- 掌握距离分析中的核心工具:欧氏距离、成本距离。 **
-
栅格数据基础:
- 栅格 vs. 矢量: 对比两种数据模型的优缺点。
- 关键概念: 像元、分辨率、栅格数据类型(整型、浮点型)。
- 环境设置: 在进行栅格分析前,设置好分析范围、像元大小和坐标系。
-
距离分析:
- 欧氏距离:
- 场景: 计算区域内每个位置到最近消防站的直线距离。
- 操作: 使用“欧氏距离”工具,输入点要素(消防站),生成一个距离栅格图层,距离越远,像元值越大。
- 成本距离:
- 场景: 一辆救护车需要从医院前往事故现场,但道路通行速度不同(高速公路快,乡村小路慢),计算救护车到达每个位置所需的最短“时间成本”。
- 操作:
- 成本栅格: 创建一个栅格,像元值代表穿越该像元的成本(如时间、难度)。
- 成本距离工具: 输入源点(医院)和成本栅格。
- 结果: 生成一个成本距离栅格和方向栅格。
- 欧氏距离:
实验报告:
- 解释栅格数据在连续表面分析(如地形、温度)中的优势。
- 比较欧氏距离分析和成本距离分析的异同点,并举例说明各自的应用场景。
- 完成一个欧氏距离分析(如到公园的距离)和一个成本距离分析(如到某点的通行时间成本),附上输入数据、成本栅格(如适用)和最终结果截图,并对结果进行解读。
栅格数据空间分析(二)—— 表面分析与地图代数
实验目标:
- 掌握基于高程数据的表面分析技术。
- 理解地图代数的基本思想,并能使用栅格计算器进行简单分析。 **
-
表面分析:
- 场景: 基于数字高程模型分析一个区域的地形特征。
- 操作:
- 坡度: 使用“坡度”工具,计算每个像元的陡峭程度。
- 坡向: 使用“坡向”工具,计算每个像元的朝向(北、南、东、西等)。
- 山体阴影: 使用“山体阴影”工具,生成具有立体感的阴影图,增强地形起伏的视觉效果。
- 等值线: 使用“等值线”工具,从DEM中提取等高线。
-
地图代数:
- 原理: 将地图视为代数表达式中的变量,通过数学运算生成新的地图。
- 栅格计算器:
- 场景1: 识别出坡度大于15度且坡向为南(157.5-202.5度)的区域,这些是理想的阳坡林地。
- 表达式示例:
("Slope" > 15) & ("Aspect" >= 157.5 & "Aspect" < 202.5) - 场景2: 水源保护区综合评价,综合考虑距离水源地的距离、坡度和土地利用类型,生成一个适宜性评价图。
- 表达式示例:
("Suitability_Raster" = "Dist_Water" * 0.4 + "Slope" * 0.3 + "LandUse" * 0.3)
实验报告:
- 解释坡度、坡向和山体阴影在景观分析和工程建设中的作用。
- 什么是地图代数?请用自己的话描述其工作原理。
- 完成一个基于DEM的表面分析,并附上DEM、坡度、坡向和山体阴影的对比截图。
- 设计并实现一个简单的地图代数表达式(如上述场景1),附上表达式和结果截图。
第三部分:综合应用与建模
综合应用案例——公园选址分析
实验目标:
- 整合矢量分析和栅格分析技术。
- 学习使用加权叠加方法进行多准则决策分析。
- 完成一个完整的、逻辑清晰的空间分析流程。
实验背景: 某城市规划部门希望在城市内新建一个大型城市公园,以提升市民生活品质,现需要利用GIS技术,从候选区域中筛选出最适宜的选址。
分析准则:
- 土地利用: 应优先选择未利用地、林地或绿地,避开建成区、水体和基本农田。
- 人口密度: 公园应建在人口密集的区域,服务更多市民。
- 地形坡度: 地形应相对平坦,坡度不宜过大(如小于15%),便于建设。
- 距离现有公园: 应与现有公园保持一定距离(如大于1公里),避免功能重叠。
实验步骤(工作流):
- 数据准备: 收集或创建该城市的土地利用图、人口密度图、DEM和现有公园位置图。
- 数据标准化: 将所有评价因子(土地利用、坡度、人口密度、距离公园)转换为统一的评价尺度(如1-10分,或0-1的适宜性值),这是加权叠加的关键步骤。
- 坡度0-5%为10分,5-10%为8分,>15%为0分。
- 权重分配: 根据各准则的重要性,为它们分配权重(总和为1),人口密度(0.4),土地利用(0.3),坡度(0.2),距离公园(0.1)。
- 栅格化与重采样: 将所有矢量数据(如土地利用)转换为栅格数据,并确保所有栅格图层具有相同的范围、像元大小和坐标系。
- 执行加权叠加:
- 在ArcGIS Pro的“空间分析”选项卡中,使用“加权叠加”工具。
- 将准备好的各个因子栅格图层和对应的权重、字段(标准化后的值)添加到工具中。
- 运行工具,生成“适宜性评价栅格”,像元值越高,表示该位置越适宜建设公园。
- 结果分析与后处理:
- 对适宜性评价栅格进行重分类,将得分最高的区域(如前20%)提取出来,作为最终的候选选址区。
- 将结果与底图叠加,进行目视检查和修正。
- 生成最终的分析报告和地图。
实验报告:
- 详细描述本次公园选址分析的完整工作流程,包括每一步的目的和操作。
- 列出你为各个评价因子设定的权重和标准化方法,并说明你这样设定的理由。
- 附上最终的适宜性评价图和候选选址区图,并附上简要的文字分析,说明为什么这些区域是最佳选择。
空间分析建模与自动化
实验目标:
- 理解地理处理模型的概念和作用。
- 掌握使用模型构建器创建、编辑和运行地理处理模型。
- 了解Python在GIS自动化中的基本应用。 **
-
模型构建器:
- 场景: 将实验五中的公园选址分析流程自动化,以便未来可以应用于不同城市或更新数据后快速重新分析。
- 操作:
- 打开“地理处理”窗格,创建一个新的“模型”。
- 将实验五中使用的所有工具(如“坡度”、“重分类”、“加权叠加”等)拖入模型构建器画布。
- 使用连接线将工具的输出连接到其他工具的输入,建立数据流。
- 为模型设置参数,允许用户在运行时轻松更换输入数据(如新的DEM、土地利用图)。
- 保存并运行模型,验证其是否能正确复现手动分析的结果。
-
Python入门简介:
- 为什么用Python? 实现高度自动化、批量处理、复杂算法定制、与其他科学计算库集成。
- ArcPy: Esri提供的Python站点包,用于在Python中调用ArcGIS Pro/ArcGIS Desktop的功能。
- 简单示例: 在Python窗口中运行一条简单的脚本,如
arcpy.Buffer_analysis("roads", "road_buffer", "1000 meters")。 - 进阶方向: 了解如何使用Python脚本调用在模型构建器中创建的模型,或将模型导出为Python脚本进行修改。
实验报告:
- 解释地理处理模型的优势,以及它如何提高空间分析工作的效率和可重复性。
- 截图展示你创建的公园选址分析模型,并标注出关键的数据流和参数。
- 写一段简短的Python代码(或伪代码),描述如何实现一个“批量文件夹内所有Shapefile文件生成缓冲区”的自动化任务。
第四部分:拓展与前沿
空间插值与网络分析
实验目标:
- 了解空间插值的基本原理,掌握常用插值方法。
- 初步了解网络分析的基本概念和应用。 **
-
空间插值:
- 场景: 某地区有若干个气象站点的降雨量观测数据,现在需要生成一个全区域的连续降雨量分布图。
- 方法:
- 反距离加权: 假设离观测点越近的位置,其值受该点影响越大。
- 克里金法: 不仅考虑距离,还考虑数据的空间自相关性,能提供误差预测。
- 操作: 使用“反距离加权”或“克里金法”工具,输入带有Z值(如降雨量)的点要素,生成插值结果栅格。
-
网络分析简介:
- 概念: 在基于网络(如道路网、管网、电网)的数据上进行路径分析、服务区分析等。
- 场景:
- 路径分析: 规划从A点到B点的最优路径(最快、最短)。
- 服务区分析: 计算从某个中心点(如商场、仓库)出发,在给定时间内(如30分钟车程)可以到达的所有区域。
- 操作:
- 在ArcGIS Pro中创建一个“网络分析图层”。
- 加载网络数据集(通常是道路网)。
- 设置“设施点”(起点/终点)和“障碍点”。
- 运行求解器,得到分析结果。
实验报告:
- 比较IDW和克里金法两种插值方法的优缺点。
- 简述网络分析的核心要素(网络、边、节点、成本)。
- 完成一个空间插值分析(如气温或污染物浓度),附上观测点数据和插值结果图。
- 尝试进行一次简单的网络分析(如从你家到最近商场的路径规划),附上结果截图。
GIS空间分析前沿与展望
实验目标:
- 了解当前GIS空间分析领域的新技术和新趋势。
- 拓宽视野,为未来的学习和研究方向提供参考。 探讨:**
- 大数据与空间分析:
- 挑战: GPS轨迹、社交媒体签到、手机信令等海量时空数据的处理与分析。
- 应用: 城市动态感知、职住空间关系、公共活动模式挖掘。
- 机器学习与空间分析:
- 结合: 将随机森林、支持向量机、深度学习等算法应用于遥感影像分类、土地利用变化预测、空间模式识别。
- 工具: Python的Scikit-learn, TensorFlow库与ArcPy的结合。
- 三维GIS与空间分析:
- 应用: 城市三维建模、可视域分析、日照分析、地下管网分析。
- 平台: ArcGIS Pro, CityEngine, Cesium等。
- Web GIS与空间分析:
- 趋势: 将复杂的空间分析功能部署到云端,通过Web浏览器或移动App提供服务。
- 平台: ArcGIS Online, ArcGIS API for JavaScript, GeoServer等。
实验报告(专题讨论):
- 选择上述一个前沿方向(如“机器学习在遥感影像分类中的应用”),进行文献调研。
- 撰写一篇1000字左右的短文,介绍该方向的基本概念、主要应用、代表性技术以及你对其未来发展的看法。
