【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)——批量计算图层面积
相关文章:
【ArcGIS处理】行政区划与流域区划间转化
【ArcGIS处理】行政区划与流域区划间转化 引言数据准备1、行政区划数据2、流域区划数据 ArcGIS详细处理步骤Step1:统计行政区划下子流域面积1、创建批量处理模型2、添加批量裁剪处理3、添加计算面积 Step2:根据子流域面积占比均化得到各行政区固定值 参考…...
Session、Token、Jwt三种登录方案介绍
新开发一个应用首先要考虑的就是登录怎么去做,登录本身就是判断一下输入的用户名和密码与系统存储的是否一致,但因为Http是无状态协议,用户请求其它接口时是怎么判断该用户已经登录了呢?下面聊一个三种实现方案。 一、传统sessio…...
Linux操作系统使用及C高级编程-D5Linux shell命令(进程管理、用户管理)
进程管理 查看进程ps 其中ps -eif可显示父进程 实时查看进程top 按q退出 树状图显示进程pstree 以父进程,子进程以树状形式展示 发送信号kill kill -l:查看都有哪些信号 9:进程终止 kill不指定信号,默认发送的是15信号SIGT…...
【TDSQL-PG数据库简单介绍】
TDSQL-PG数据库简单介绍 TDSQL-PGTDSQL-PG 设计目标 TDSQL-PG 腾讯 TDSQL-PG 分布式关系型数据库是一款面向海量在线实时分布式事务交易和 MPP 实时数据分析 通用型高性能数据库系统。 面对应用业务产生的不定性数据爆炸需求,不管是高并发的交易还是海量的实时数据…...
【文件包含】metinfo 5.0.4 文件包含漏洞复现
1.1漏洞描述 漏洞编号————漏洞类型文件包含漏洞等级⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐漏洞环境windows攻击方式 MetInfo 是一套使用PHP 和MySQL 开发的内容管理系统。MetInfo 5.0.4 版本中的 /metinfo_5.0.4/about/index.php?fmodule文件存在任意文件包含漏洞。攻击者可利用漏洞读取网…...
差分信号的末端并联电容到底有什么作用?
差分信号的末端并联电容到底有什么作用? 在现代电子系统中,差分信号是一种常见的信号形式,它们通过两根互补的信号线传输信号,具有较低的噪声和更高的抗干扰能力。然而,当差分信号线长度较长或者遇到复杂的电路环境时&…...
pandas教程:GroupBy Mechanics 分组机制
文章目录 Chapter 10 Data Aggregation and Group Operations(数据汇总和组操作)10.1 GroupBy Mechanics(分组机制)1 Iterating Over Groups(对组进行迭代)2 Selecting a Column or Subset of Columns (选中…...
通过右键用WebStorm、Idea打开某个文件夹或者在某一文件夹下右键打开当前文件夹用上述两个应用
通过右键用WebStorm、Idea打开某个文件夹或者在某一文件夹下右键打开当前文件夹用上述两个应用 通过右键点击某个文件夹用Idea打开 首先打开注册表 win R 输入 regedit 然后找到HKEY_CLASSES_ROOT\Directory\shell 然后右键shell 新建一个项名字就叫 Idea 第一步…...
Android 10.0 framework层设置后台运行app进程最大数功能实现
1. 前言 在10.0的定制开发中,在系统中,对于后台运行的app过多的时候,会比较耗内存,导致系统运行有可能会卡顿,所以在系统优化的 过程中,会限制后台app进程运行的数量,来保证系统流畅不影响体验,所以需要分析下系统中关于限制app进程的相关源码来实现 功能 2.framewo…...
如何快速找到华为手机中下载的文档
手机的目录设置比较繁杂,尤其是查找刚刚下载的文件,有时候需要捣鼓半天,如何快速找到这些文件呢?以下提供了几种方法: 方法一: 文件管理-》搜索文档 方法二: 文件管理-》最近 方法三…...
iceoryx(冰羚)-Architecture
Architecture 本文概述了Eclipseiceoryx体系结构,并解释了它的基本原理。 Software layers Eclipse iceoryx所包含的主要包如下所示。 接下来的部分将逐一简要介绍组件及其库。 Components and libraries 下面描述了不同的库及其名称空间。 ### iceoryx hoofs …...
LeetCode2-两数相加
大佬解法 /*** Definition for singly-linked list.* public class ListNode {* int val;* ListNode next;* ListNode(int x) { val x; }* }*/ class Solution {public ListNode addTwoNumbers(ListNode l1, ListNode l2) {ListNode pre new ListNode(0);ListNo…...
css 灰质彩色的边框
border: 4px solid transparent; background-color:#fff; background-clip: padding-box,border-box; background-origin:padding-box, border-box; background-image: linear-gradient(90deg,#F5F6FA,#F5F6FA 42%,#F5F6FA),linear-gradient(151deg,#33e9bf,#c7e58a,#b1e8cc);...
OpenCV实现手势音量控制
前言: Hello大家好,我是Dream。 今天来学习一下如何使用OpenCV实现手势音量控制,欢迎大家一起前来探讨学习~ 一、需要的库及功能介绍 本次实验需要使用OpenCV和mediapipe库进行手势识别,并利用手势距离控制电脑音量。 导入库&am…...
pytorch 深度学习之余弦相似度
文章目录 用处定理代码F.normalize() 和 F.norm() 的区别 用处 此方法特别重要,经常可以用来修改论文,提出创新点. 定理 余弦相似度是通过计算两个向量之间的夹角余弦值来衡量它们的相似性。给定两个非零向量 x 和 y,它们之间的余弦相似度…...
Postman的常规断言/动态参数断言/全局断言
近期在复习Postman的基础知识,在小破站上跟着百里老师系统复习了一遍,也做了一些笔记,希望可以给大家一点点启发。 断言,包括状态码断言和业务断言,状态码断言有一个,业务断言有多个。 一)常规的…...
ruoyi若依前端请求接口超时,增加响应时长
问题: 前端查询请求超时 解决: 找到request.js的timeout属性由10秒改成了20秒,因为默认是10秒,请求肯定是超出了10秒 祝您万事顺心,没事点个赞呗,关注一下也行啊,有啥要求您评论哈...
贪吃蛇小游戏
一. 准备工作 首先获取贪吃蛇小游戏所需要的头部、身体、食物以及贪吃蛇标题等图片。、 然后,创建贪吃蛇游戏的Java项目命名为snake_game,并在这个项目里创建一个文件夹命名为images,将图片素材导入文件夹。 再在src文件下创建两个包&#…...
cocos----1
1 前言 刚体(Rigidbody)是运动学(Kinematic)中的一个概念,指在运动中和受力作用后,形状和大小不变,而且内部各点的相对位置不变的物体。在 Unity3D 中,刚体组件赋予了游戏对…...
第十九章绘图
Java绘图类 Graphics 类 Grapics 类是所有图形上下文的抽象基类,它允许应用程序在组件以及闭屏图像上进行绘制。Graphics 类封装了Java 支持的基本绘图操作所需的状态信息,主要包括颜色、字体、画笔、文本、图像等。 Graphics 类提供了绘图常用的…...
大话软工笔记—需求分析概述
需求分析,就是要对需求调研收集到的资料信息逐个地进行拆分、研究,从大量的不确定“需求”中确定出哪些需求最终要转换为确定的“功能需求”。 需求分析的作用非常重要,后续设计的依据主要来自于需求分析的成果,包括: 项目的目的…...
基于Uniapp开发HarmonyOS 5.0旅游应用技术实践
一、技术选型背景 1.跨平台优势 Uniapp采用Vue.js框架,支持"一次开发,多端部署",可同步生成HarmonyOS、iOS、Android等多平台应用。 2.鸿蒙特性融合 HarmonyOS 5.0的分布式能力与原子化服务,为旅游应用带来…...
Keil 中设置 STM32 Flash 和 RAM 地址详解
文章目录 Keil 中设置 STM32 Flash 和 RAM 地址详解一、Flash 和 RAM 配置界面(Target 选项卡)1. IROM1(用于配置 Flash)2. IRAM1(用于配置 RAM)二、链接器设置界面(Linker 选项卡)1. 勾选“Use Memory Layout from Target Dialog”2. 查看链接器参数(如果没有勾选上面…...
鸿蒙中用HarmonyOS SDK应用服务 HarmonyOS5开发一个医院查看报告小程序
一、开发环境准备 工具安装: 下载安装DevEco Studio 4.0(支持HarmonyOS 5)配置HarmonyOS SDK 5.0确保Node.js版本≥14 项目初始化: ohpm init harmony/hospital-report-app 二、核心功能模块实现 1. 报告列表…...
sqlserver 根据指定字符 解析拼接字符串
DECLARE LotNo NVARCHAR(50)A,B,C DECLARE xml XML ( SELECT <x> REPLACE(LotNo, ,, </x><x>) </x> ) DECLARE ErrorCode NVARCHAR(50) -- 提取 XML 中的值 SELECT value x.value(., VARCHAR(MAX))…...
《基于Apache Flink的流处理》笔记
思维导图 1-3 章 4-7章 8-11 章 参考资料 源码: https://github.com/streaming-with-flink 博客 https://flink.apache.org/bloghttps://www.ververica.com/blog 聚会及会议 https://flink-forward.orghttps://www.meetup.com/topics/apache-flink https://n…...
IoT/HCIP实验-3/LiteOS操作系统内核实验(任务、内存、信号量、CMSIS..)
文章目录 概述HelloWorld 工程C/C配置编译器主配置Makefile脚本烧录器主配置运行结果程序调用栈 任务管理实验实验结果osal 系统适配层osal_task_create 其他实验实验源码内存管理实验互斥锁实验信号量实验 CMISIS接口实验还是得JlINKCMSIS 简介LiteOS->CMSIS任务间消息交互…...
华为云Flexus+DeepSeek征文|DeepSeek-V3/R1 商用服务开通全流程与本地部署搭建
华为云FlexusDeepSeek征文|DeepSeek-V3/R1 商用服务开通全流程与本地部署搭建 前言 如今大模型其性能出色,华为云 ModelArts Studio_MaaS大模型即服务平台华为云内置了大模型,能助力我们轻松驾驭 DeepSeek-V3/R1,本文中将分享如何…...
select、poll、epoll 与 Reactor 模式
在高并发网络编程领域,高效处理大量连接和 I/O 事件是系统性能的关键。select、poll、epoll 作为 I/O 多路复用技术的代表,以及基于它们实现的 Reactor 模式,为开发者提供了强大的工具。本文将深入探讨这些技术的底层原理、优缺点。 一、I…...
Java多线程实现之Thread类深度解析
Java多线程实现之Thread类深度解析 一、多线程基础概念1.1 什么是线程1.2 多线程的优势1.3 Java多线程模型 二、Thread类的基本结构与构造函数2.1 Thread类的继承关系2.2 构造函数 三、创建和启动线程3.1 继承Thread类创建线程3.2 实现Runnable接口创建线程 四、Thread类的核心…...
