首页 > 其他分享 >ArcGIS 水文分析模型构建

ArcGIS 水文分析模型构建

时间:2024-05-25 15:33:43浏览次数:20  
标签:分析 栅格 模型 ArcGIS dem 水文 分析模型 河流

前言

在地理信息系统(GIS)领域,水文分析是一项至关重要的任务,它涉及到对地表水流动路径、河流网络、流域划分等关键水文特征分析。这些分析对于水资源管理、洪水预警、环境规划以及城市排水系统设计等众多领域都具有重要的应用价值。

本文旨在探讨ArcGIS中水文分析的全过程,并展示如何构建一个可复用的水文分析模型。通过本文的学习和实践,读者将能够深入了解ArcGIS在水文分析方面的应用,掌握从数据预处理到模型构建、从模型运行到结果输出的整个流程。此外,本文还将介绍如何将ArcGIS模型脚本化,以提高模型的复用性和自动化程度。

在接下来的章节中,我们将详细介绍水文分析的各个步骤,包括资料背景的准备、操作中可能出现的问题及注意事项、分析框架的梳理、水文模型的搭建、模型思维和图形化界面的构建等。通过这些内容的学习,读者将能够全面掌握 ArcGIS 水文分析的相关知识和技能。

项目环境、条件

ArcGIS 10.8 中文包
已开启 Spatial Analyst Tools 分析工具
Win 10
数据集
30 m dem 栅格数据集
Tips:可在微信公众号:环境猫 er ,回复 dem ,获取本文实验 dem 。
理论上 ArcGIS 10.2 也几乎一样,部分工具可能由翻译问题,建议初学者完全按照本文的文档结构进行。

Dem 数据预览

DEM(Digital Elevation Model,数字高程模型)是一种用于表示地表地形起伏的数字模型。它通过规则格网的矩阵形式,记录每个格网单元的高程值,从而在计算机中构建出地形的三维模型。DEM 是地理信息系统(GIS)中重要的空间数据类型之一,广泛应用于地形分析、水文模拟、城市规划、地质灾害评估等多个领域。
Dem 可以通过地理空间数据云、QGIS 插件、CAD 地形文件生产等多种方式获取。此前有介绍,本文不多赘述。

image.png

ArcGIS模型构建器

ArcGIS模型构建器是Esri公司开发的ArcGIS软件中的一个强大工具,它允许用户通过图形化界面来创建、编辑和运行一系列自动化的GIS分析模型。模型构建器的核心优势在于能够将复杂的GIS分析流程简化为一系列可视化的步骤,使得用户无需编写代码即可完成复杂的空间分析任务。
可以在空白文件夹下,点击按钮打开,也可以在文件夹内,右键打开。
image.png
建议像笔者一样,建立好文件夹框架,依次新建文件数据库-工具集-模型。
image.png
在模型构建器中,数据类型如下,本文将用到项目数据、工具、派生数据和值等类型。
image.png
将数据、工具等可以直接拖入模型界面中,非常方便。

模型搭建

填洼

dem-填洼-fill
填洼(Fill)是去除 dem 中的洼地(sinks)或凹陷(depressions)。这些洼地在地形分析中可能会导致错误的水流方向和流域划分,需要通过填洼操作来纠正。
image.png
image.png

流向

fill-流向-FlowDirection
注意选着 fill 时需要选择蓝色循环的那个,为变量值。
image.png
image.png
image.png

流量

FlowDirection-流量-fillacc
image.png
image.png
根据栅格数值大小隐约能看出河流的线条。
image.png
点击栅格可以查询该处的数值,通过这种方法判断最小径流的值,后面有用。
image.png

河流长度

FlowDirection-河流长度-flowlength 测量方向选择 upstream,
水流长度工具的主要用途是计算给定盆地内最长水流的长度。该度量值常用于计算盆地的聚集时间。这可使用 UPSTREAM 选项来完成。该工具也可通过将权重栅格用作下坡运动的阻抗,来创建假设降雨和径流事件的距离-面积图。
image.png
image.png

栅格计算器

栅格计算器 或者条件函数
栅格计算器(Raster Calculator) 条件函数 Con(FlowAccu>R,1)
目的是将流量栅格数据中提取河流的部分,公式为"flowacc" >= 1000。
在模型构建器中使用左右%代表变量。新增一个变量,作为流量限值 R,建议通过流量栅格 (flowacc), 点击查询河流的最小栅格,我这里根据实际情况,选择输入 1000。
image.png

具体公式以自己实验为准,添加变量后,修改为"%fillacc%" >= "%任意值%"
image.png
记得点击任意值,添加 1000,这样以后只需要修改这个值,就可以调整河流长度了。
Acc 1000 结果,可见满足条件的,也就是河流为 1,不满足的为 0.
image.png

河流链接

acc1000+FlowDirection=Streamlink
by 河流链接
河流链接的作用有:构建连续的河流网络:河流链接工具能够识别并连接相邻的河流段,确保河流网络在空间上是连贯和正确的。分配唯一标识符:给河流网络中的每个部分分配唯一的 ID,便于管理和进一步分析。这有助于区分不同的河流分支和主流,以及分析它们各自的属性(如流量、长度等)。优化数据结构,减少在模型中处理大量独立线段时的复杂性。

image.png
image.png

河网分级

acc1000+FlowDirection=StreamOrder
by 河网分级
河网结构用于识别河流上下级,常见的河网分级方法有斯特拉勒(Strahler)、希科特(Horton)和谢内(Shreve)等。斯特拉勒法是最常用的,它基于河流交汇规则来分配等级,即每次支流汇入时,如果两支流的等级相同,则合并后的河段等级加1;如果不同,则高等级保持不变。
image.png
image.png

栅格河网矢量化

StreamOrder+FlowDirection=StreamOrder1000
by 栅格河网矢量化
顾名思义,栅格河网矢量化就是将河流网络的栅格数据转换成矢量数据格式,便于分析、可视化及水文建模应用。注意如果要增加河流长度等字段,需要在投影坐标系下进行。
image.png

image.png

绘制倾泻点

StreamOrder 1000+end=FeatureVert_1000
By要素折点转点
倾泻点是指汇流区域中具有最低高程的边界象元。它标志着水从一个流域流向另一个流域的出口点,或者是水流离开一个封闭流域(如盆地)的地点。
可以通过要素折点转点生成,也可以根据自己手工增加,形式是一些离散的点。
要素折点转点,顾名思义,指通过矢量线的折点或转点然后生成点,有 all、mindle、end、start、both_ends、dangle(悬挂点,指离散点) 等类型,绘制倾泻选择 end 。

image.png
倾泻点非常关键,是汇水区分析的重要参数,除了自动生成的点外,可以根据实际需要,添加、删除点。
河流与倾泻点

栅格流域提取

集水区

集水区也就是分水岭,根据流向和倾泻点一起做的汇水范围。有倾泻点的会比盆域分析更细,他与倾泻点的点位有很大关系。
FlowDirection+FeatureVert_1000=倾泻点字段为空=watersh

image.png
image.png

盆域分析

流向 FlowDirection 盆域分析= basin
盆域分析,也就是流域分析,可以理解为没有倾泻点的大范围流域分析。
image.png
image.png

运行模型-成功
image.png

栅格转面

上述流域栅格,转为矢量图层。用于可视化和计算,作用与栅格河网矢量化类似。
basin/watersh 栅格转面 RasterT_basin /RasterT_watersh

image.png
子流域范围.png

至此,水文分析基本结束。
调试模型,运行成功。
image.png

调整模型架构,让连接线不交叉。
image.png

模型应用

导出 py 文件

可以导出 py 文件,进行模型复用。在 ArcGIS 环境中导入脚本,注意导入前修改绝对地址注意保持一致。另外它基于 ArcPy 模块,一个专为 ArcGIS 设计的空间分析和数据处理库。因此,它的运行环境依赖于 ArcGIS,使用 ArcGIS Python 2.X 环境编写的。不能用于 python 3 中。
经过测试,代码并不能直接使用,需要重新编译后才能使用,后续会出一期 python 水文分析的文章。

完善脚本

  1. 将 dem 输入变为变量,方法为新增变量-栅格数据集,然后选择对应的 dem 位置。
  2. 重命名,将 dem 命名为输入 dem。双精度命名为输入流量下限值。
  3. 完善模型参数,模型-模型属性-参数将输入 dem、输入流量下限值作为必填项

image.png

最终效果

点击模型打开,输入 dem 和下限值,点击运行。
1716431898456.png

image.png
运行成功,结果输出在模型内指定的文件夹。
image.png
重新运行将会替换结果文件,运行一次后,结果移动出来,再次使用。总之,非常方便。

结束语

本文通过详细探讨ArcGIS水文分析的全过程,不仅展示了如何利用ArcGIS模型构建器来创建一个高效、可复用的水文分析模型,还深入介绍了模型构建器的图形化界面和强大功能。通过本文的学习,读者可以清晰地看到,即使是GIS编程新手,也能通过模型构建器实现复杂的空间分析任务,而无需深入代码层面。

标签:分析,栅格,模型,ArcGIS,dem,水文,分析模型,河流
From: https://www.cnblogs.com/chenwenmao/p/18212474

相关文章

  • 常见数据分析模型与方法①-RFM
    一、简述RFM用于对用户进行分类,并判断每类细分用户的价值。通过最近一次消费时间(R):客户距离最近的一次采购时间的间隔。最近一段时间内消费频次(F):指客户在限定的期间内所购买的次数。最近一段时间内消费金额(M):客户的消费能力,通常以客户单次的平均消费金额作为衡量指标。这三......
  • 如何在ArcGIS Pro中添加无标注的底图
    在ArcGIS3.0中,新建一个地图会自带两个图层,分别是WorldTopographicMap和World_Hillshade,也就是世界地形图和世界山体阴影,这套底图的颜色和符号的使用都非常赏心悦目。 但是我们在制图时,有时候想利用这个底图,却不想使用地图中的标注。而这个标注是没办法通过简单设置就开......
  • ArcGIS Engine调用GP工具
    //引入命名空间usingESRI.ArcGIS.esriSystem;usingESRI.ArcGIS.Geoprocessor;//创建执行GP工具通用类protectedvoidExecuteGPTool(IGPProcessgpProcess,Geoprocessorgp=null){if(gp==null){gp=newGeoprocessor......
  • Arcgis Pro 展示野外点位的照片
    一、照片传输1.1 怎么把照片传输到PC端且不会丢失GPS信息我们要想实现把在野外拍的照片在GISPro中展示,首先得确保拍的照片有GPS信息。手机拍的照片通过微信或者QQ传输会丢失GPS信息,建议采用数据线连接手机和电脑直接传输;或者在手机上以邮件的形式分享图片,然后在电脑上下载。......
  • 用户行为分析模型实践(四)—— 留存分析模型
    作者:vivo互联网大数据团队-WuYonggang、LiXiong本文是vivo互联网大数据团队《用户行为分析模型实践》系列文章第4篇-留存分析模型。本文详细介绍了留存分析模型的概念及基本原理,并阐述了其在产品中具体实现。针对在实际使用过程问题,探索了基于ClickHouse留存分析模型实践......
  • 【ArcGIS Pro SDK】ArcGIS Pro SDK Geoprocessor 仿 ArcGIS Engine Geoprocessor、IGP
    Baci.Net.ToolKit.ArcGISProGeoprocessor介绍在ArcGISProSDK(2.8)中仿ArcGISEngine中的Geoprocessor、IGPProcess。ArcGISProSDKGeoprocessor仿ArcGISEngine中的Geoprocessor实现2.8版本下的所有工具的生成。方法、参数的注释,翻译(机翻)。各个工具支持的有效的环......
  • ArcGIS Pro发布场景图层服务
    一、数据准备武汉房屋模拟数据,有楼层floor属性二、要素拉伸(可选)三、3D图层转要素类四、创建3D对象场景图层内容五、发布服务arcgispro如何如何生成三维白膜数据?如何创建可查询的三维建筑?......
  • 读论文-基于注意力机制的浅层图像隐写分析模型
    前言今天要读的论文是一篇名为《基于注意力机制的浅层图像隐写分析模型》,文章提出了一种基于注意力机制的浅层图像隐写分析模型,通过使用一个浅层神经网络控制模型参数量和训练时间,引入注意力模块,加速模型收敛,提升模型检测的准确率。要引用本文:请使用如下格式:段明月,李爽,钟小......
  • 【讲解下如何安装ArcGIS 10.8】
    ......
  • Arcgis按位置选择工具解决区域内要素的选择问题
    一、方法一按位置选择1.菜单中Selection-》Selectbylocation2.点击Apply即可选中多边形内的要素。二、方法二Intersect相交操作Toolbox-》AnalysisTools-》Overlay-》Interscet 点击OK。根据FID_small选择对应的多边形可以统计其数目。  ......