当前位置: 首页 > news >正文

【ArcGIS处理】行政区划与流域区划间转化

【ArcGIS处理】行政区划与流域区划间转化

  • 引言
    • 数据准备
      • 1、行政区划数据
      • 2、流域区划数据
  • ArcGIS详细处理步骤
    • Step1:统计行政区划下子流域面积
      • 1、创建批量处理模型
      • 2、添加批量裁剪处理
      • 3、添加计算面积
    • Step2:根据子流域面积占比均化得到各行政区固定值
  • 参考

引言

依据水文模型得到流域尺度模拟结果时,需要将成果转化至行政区划下,此时应当如何实现呢?
在这里插入图片描述
本案例用于得到行政区划固定值,主要思路如下:

  • 计算各行政区划下各子流域面积
  • 根据各行政区划下各子流域面积占比均化得到县区固定值

数据准备

1、行政区划数据

行政区划数据如下图所示:包含11个县区
在这里插入图片描述

2、流域区划数据

子流域数据如下所示:
在这里插入图片描述
因县区包含多个子流域,流域分区数据有多个,后续需要将其合并,以一并处理。

  • 操作1:合并多个子流域数据成一个图层,
    打开【Union】工具,选择多个子流域,以合并为同一图层
    在这里插入图片描述
    成图如下所示:
    在这里插入图片描述
  • 操作2:计算各子流域面积
    打开子流域属性表,右键点击【计算几何/Calculate Geometry】,界面如下:
    在这里插入图片描述
  • 操作3:重新给各子流域编号
    在这里插入图片描述

ArcGIS详细处理步骤

由于县区级行政区有多个,此处使用ModelBuilder设置批量处理,具体处理步骤如下。

Step1:统计行政区划下子流域面积

思路:批量裁剪得到各行政区划下子流域分布图并统计各子流域面积

1、创建批量处理模型

因为模型(Model)是要在工具箱(Toolbox)下面创建的,所以我们首先应该新建一个工具箱。选中文件夹,右键,在弹出的面板中选择“New”—>“Toolbox”,命名为批量处理(BatchProcess)即可,界面如下:
在这里插入图片描述
选中批量处理(BatchProcess)工具箱,右键,在弹出的面板中选择“New”—>“Model”。如此,模型就被创建成功了。剩下的就是参数的设置了。
在这里插入图片描述
模型设计界面如下:
在这里插入图片描述

2、添加批量裁剪处理

将前文准备的行政区划数据和行政区划数据拖入模型界面,如下:均显示为椭圆形状的参数
在这里插入图片描述
步骤1:设置迭代器
为【ElevenTowns】添加一个迭代器。在【Insert】中选择【Iterators】,在弹出的面板中选中“迭代器”—>“要素类”(由于处理文件为shp形式,添加要素迭代器)
在这里插入图片描述
接下来将【ElevenTowns】与迭代器参数进行连接。选中右上角倒数第三个“线”工具,简单连接,如下:

方式2: 在迭代器上选择输入参数,设置输入文件路径为包含县区行政区划下文件即可
在这里插入图片描述
连接完成界面如下:
在这里插入图片描述

步骤2:添加裁剪工具箱

裁剪工具箱位置:Data Management Tools–Raster–Raster Pcocessing–Clip

从系统工具箱中拖入裁剪工具( 数据管理→栅格→栅格处理→裁剪),如下:
在这里插入图片描述
接下来需要完成要素与裁剪工具的连接。

同样使用右上角的单数第三个“线”工具,要素数据与裁剪工具连接。一定要注意,输入要素为【流域Watershed】中的要素;裁剪要素为【ElevenTowns】
在这里插入图片描述
为保存的裁剪后的要素名称设置环境变量,
在这里插入图片描述
设置完成后,点击运行,如下图
在这里插入图片描述
导入裁剪后各shp文件,界面如下:
在这里插入图片描述

3、添加计算面积

批量裁剪完成后,需要添加新的模型批量计算各县区下各子流域所占面积:
步骤1:添加迭代器
在这里插入图片描述
步骤3:添加字段
因为要计算面积(或者长度之类),所以需要添加一个字段用以存储计算的数据。你可以打开ArcToolbox工具箱,依次选择【数据管理工具】→【字段】→【添加字段】,并把添加字段工具拖到模型界面,如下
在这里插入图片描述
双击【添加字段】或者右键弹出选择参数:

  • 【输入表】:插入迭代器后出现的【连接器】
  • 【字段名称】:选择合适的名称添加就可以
  • 【字段类型】:可根据数据精度要求自行选择

在这里插入图片描述
点击【OK】后,界面如下:
在这里插入图片描述
步骤4:计算字段
根据同样的操作,找到【计算字段】工具,并将其拖到模型界面,如下:
在这里插入图片描述
双击或者右键弹出设置参数,设置如下:

  • 【输入表】:选择【添加字段】后弹出的模型的连接器
  • 【字段名称】:上一步起名的字段;
  • 【计算公式】:!shape.area@acres!(这是python计算面积的公式)
    一定记得【表达式类型】选择【python】

在这里插入图片描述
设置完成后,整个界面如下所示:
在这里插入图片描述
点击运行,结果如下:
在这里插入图片描述

Step2:根据子流域面积占比均化得到各行政区固定值

思路:根据各面积占比,类似泰森多边形法求得面降水量,计算得到各行政区固定值

根据以上处理步骤可得到各行政区划下各子流域面积,可根据面积占比,计算得到行政区划下特征值。

参考

1、知乎-【ArcGIS教程】(88)模型—批量裁剪
2、知乎-【ArcGIS教程】(106)模型构建器(2)——批量计算图层面积

相关文章:

  • C语言编程陷阱(三)
  • 此芯科技加入绿色计算产业联盟,参编绿色计算产业发展白皮书
  • Ansys Electronics Desktop仿真——HFSS线圈寄生电阻,电感
  • 本地开发环境和服务器传输数据的几种方法
  • vue3路由
  • 基础框架代码解释
  • mybatis之主键返回
  • Spring Task使用介绍
  • 云ES容灾方案
  • 深度学习YOLOv5车辆颜色识别检测 - python opencv 计算机竞赛
  • 2023大厂高频面试题之CSS篇(2)
  • HotSpot 为什么要分为新生代和老年代?
  • 记录我常用的免费API接口
  • 微服务测试怎么做
  • vue3插槽的使用
  • 《Javascript数据结构和算法》笔记-「字典和散列表」
  • 【402天】跃迁之路——程序员高效学习方法论探索系列(实验阶段159-2018.03.14)...
  • Effective Java 笔记(一)
  • extract-text-webpack-plugin用法
  • git 常用命令
  • IE报vuex requires a Promise polyfill in this browser问题解决
  • IIS 10 PHP CGI 设置 PHP_INI_SCAN_DIR
  • interface和setter,getter
  • Just for fun——迅速写完快速排序
  • linux安装openssl、swoole等扩展的具体步骤
  • MySQL常见的两种存储引擎:MyISAM与InnoDB的爱恨情仇
  • Next.js之基础概念(二)
  • PAT A1120
  • PHP的类修饰符与访问修饰符
  • Python学习之路13-记分
  • Quartz实现数据同步 | 从0开始构建SpringCloud微服务(3)
  • react 代码优化(一) ——事件处理
  • RxJS 实现摩斯密码(Morse) 【内附脑图】
  • webpack4 一点通
  • 翻译--Thinking in React
  • 关于for循环的简单归纳
  • 后端_MYSQL
  • 记录一下第一次使用npm
  • 算法-插入排序
  • 小程序button引导用户授权
  • 小程序上传图片到七牛云(支持多张上传,预览,删除)
  • 树莓派用上kodexplorer也能玩成私有网盘
  • ​DB-Engines 11月数据库排名:PostgreSQL坐稳同期涨幅榜冠军宝座
  • ​Z时代时尚SUV新宠:起亚赛图斯值不值得年轻人买?
  • #单片机(TB6600驱动42步进电机)
  • $(selector).each()和$.each()的区别
  • (java)关于Thread的挂起和恢复
  • (Matlab)使用竞争神经网络实现数据聚类
  • (独孤九剑)--文件系统
  • (二)JAVA使用POI操作excel
  • (二)什么是Vite——Vite 和 Webpack 区别(冷启动)
  • (二十一)devops持续集成开发——使用jenkins的Docker Pipeline插件完成docker项目的pipeline流水线发布
  • (三) diretfbrc详解
  • (算法二)滑动窗口
  • (转)c++ std::pair 与 std::make