第十二章空间分析建模主要内容空间分析建模的概念和过程图解模型的形成过程模型生成器基本操作脚本文件的编写与运行空间建模操作过程•空间分析建模是指运用GIS空间分析建立数学模型的过程,其过程包括:明确问题、分解问题、组建模型、检验模型结果和应用分析结果。本章主要介绍如下内容12.1空间分析模型与建模•12.1.1空间分析模型及其分类•12.1.2运用建模思想解决具体问题12.1.1空间分析模型及其分类•模型是对现实世界中的实体或现象的抽象或简化,是对实体或现象中最重要的构成及其相互关系的表述。•空间分析为人们建立复杂的模型提供了基本工具。•空间分析模型是指用于GIS空间分析的数学模型。•GIS空间分析模型是在GIS空间数据基础上建立起来的模型。空间分析模型可以分为以下几类:•1.空间分布分析模型•2.空间关系分析模型•3.空间相关分析模型•4.预测、评价与决策模型12.1.2运用建模思想解决具体问题•运用数学分析方法建立的表达式,反映地理过程,来模拟地理现象的形成过程的模型称为过程模型,也叫处理模型,均是指描述物体或对象之间相互作用的处理过程的模型。•空间分析建模是指运用GIS空间分析建立数学模型的过程。实际问题抽象、简化、假设、确定变量和参数放置模型要素图形并为相应的变量赋值连接对象验证模型运行和使用模型建立图解模型的流程图图12.1图解建模流程图12.2图解建模•12.2.1基本概念及类型•12.2.2模型生成器组成•12.2.3图形模型的形成过程12.2.1基本概念及类型1.基本概念(1)图解建模是指将一个具体的过程模型用直观的图形语言表达出来,像绘制流程图那样,建立总体模型,并定义图形分别代表输入数据、输出数据、空间处理工具。(2)模型生成器(ModelBuilder)是ArcGIS9所提供的构造地理处理工作流和脚本的图形化建模工具,加速复杂地理处理模型的设计和实施。2.图形模型的基本类型(1)按其包含过程的数量可以分为单过程模型和多过程模型(2)按照模型中过程的种类可以分为单一处理工具模型和复杂处理工具模型单过程模型和多过程模型单过程模型输入空间处理工具输出输入2输入1空间处理工具1输出1空间处理工具2输出3多过程模型图12.3多过程模型建立过程图12.2单过程模型建立过程单一处理工具模型和复杂处理工具模型输入1Spatialanalysttools1输出1Spatialanalysttools2输出3输入2单一处理工具模型图12.4单一处理工具模型处理过程输入1Spatialanalysttools输出1Conversiontools输入2输出3复杂处理工具模型图12.5复杂处理工具模型处理过程12.2.2模型生成器组成1.模型构造器界面2.模型构造器菜单3.模型构造器工具图标4.实例分析1.模型构造器界面图12.6模型构造器的初始界面2.模型构造器菜单RunRunentiremodelValidateentiremodelSaveDeleteintermediatedataPrintsetupPrintpreviewPrintReportModelpropertiesDiagrampropertiesExportImportCloseAutolayoutZoomOverviewwindowArcGISdesktophelpAboutModelBuilder运行运行整个模型验证整个模型保存模型当前状态删除临时文件打印设置打印预览打印报表模型属性图解属性输出导入关闭自动布局缩放全部窗口ArcGIS桌面帮助关于模型构造器命令功能图12.7模型构造器菜单列表3.模型构造器工具图标SavePrintCutCopyPasteOpenAutolayoutFullextentZoominZoomoutZoomContinuousZoomPanNavigatorSelectAddconnectionRun保存模型当前状态打印剪切拷贝粘贴打开自动布局全景缩小放大缩放连续缩放手动漫游自动观察选取模型要素添加连接运行图标命令功能图12.8模型构造器工具图标列表4.实例分析利用DEM来提取水系:对于与地表水文情况有关的许多领域如区域规划、农业、林业等有十分重要意义1.建立概念模型分析:1)问题的抽象和简化:模拟地表径流在地表的流动来产生水系。2)前提、假设:此处DEM的洼地均为可填充型洼地。3)涉及的参数和变量:填充后的无洼地DEM、DEM每个栅格单元的水流方向、每个栅格上游汇水面积、确定水系的阈值大小。4)数据类型的转换:由于基于DEM的计算都是栅格数据,故需要将水系栅格数据转换为矢量数据。2.形成图解模型格式转换设置阈值DEMFilledDEMFlowDirectionFlowAccumulationStreamGridStreamLine图12.9图解建模流程图例:利用DEM提取水系的图解模型图12.10DEM提取水系图解模型3.实现模型图12.11整个建模过程的完成实现•4.运行结果(b)汇流累计大于1000的河网(a)汇流累计大于200的河网图12.12得到的不同阈值的河网结果比较12.3脚本文件•12.3.1脚本简介•12.3.2脚本编写基础•12.3.3创建脚本文件12.3.1ArcGIS9脚本简介•任何可以支持COM的脚本语言都可以执行ArcGIS9的地理处理工具,如Python、Jscript和VBScript等•模型生成器是构建脚本的方便工具,只要先构建一个模型再输出成脚本即可。•脚本可以脱离ArcGIS的环境独立运行12.3.2脚本编写基础•通过脚本调用ArcTools进行空间处理,本质上是通过GPDispatch组件类来实现的。•GPDispatch组件类的作用就是调用和执行各种地理处理工具。•WScript.CreateObject(esriGeoprocessing.GPDispatch.1)•在vbs脚本中通过以上语句创建一个GPDispatch对象。12.3.3创建脚本文件•1.单数据处理•2.批处理1.单数据处理(1)概念所谓单数据处理,是指处理过程中只涉及到单个数据集的处理,数据可以是栅格数据集、ArcView的shapefile也可以是Arc/Info的coverage等(2)实现第一步:编写脚本第二步:在ArcToolbox中添加script第三步:设置script属性第四步:运行脚本2.批处理(1)概念所谓批处理是指一次操作多个同样格式数据的过程。脚本提供了一种便捷的方式用于批处理,数据转换以及任何空间处理工具的使用。要进行批处理,只要在脚本中加入循环语句即可。(2)实现第一步:编写脚本第二步:在ArcToolbox中添加script第三步:运行脚本