当前位置: 首页 > 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)——批量计算图层面积

相关文章:

【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 第一步&#xf…...

Android 10.0 framework层设置后台运行app进程最大数功能实现

1. 前言 在10.0的定制开发中,在系统中,对于后台运行的app过多的时候,会比较耗内存,导致系统运行有可能会卡顿,所以在系统优化的 过程中,会限制后台app进程运行的数量,来保证系统流畅不影响体验,所以需要分析下系统中关于限制app进程的相关源码来实现 功能 2.framewo…...

如何快速找到华为手机中下载的文档

手机的目录设置比较繁杂,尤其是查找刚刚下载的文件,有时候需要捣鼓半天,如何快速找到这些文件呢?以下提供了几种方法: 方法一: 文件管理-》搜索文档 方法二: 文件管理-》最近 方法三&#xf…...

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 类提供了绘图常用的…...

接口测试中缓存处理策略

在接口测试中,缓存处理策略是一个关键环节,直接影响测试结果的准确性和可靠性。合理的缓存处理策略能够确保测试环境的一致性,避免因缓存数据导致的测试偏差。以下是接口测试中常见的缓存处理策略及其详细说明: 一、缓存处理的核…...

深度学习在微纳光子学中的应用

深度学习在微纳光子学中的主要应用方向 深度学习与微纳光子学的结合主要集中在以下几个方向: 逆向设计 通过神经网络快速预测微纳结构的光学响应,替代传统耗时的数值模拟方法。例如设计超表面、光子晶体等结构。 特征提取与优化 从复杂的光学数据中自…...

label-studio的使用教程(导入本地路径)

文章目录 1. 准备环境2. 脚本启动2.1 Windows2.2 Linux 3. 安装label-studio机器学习后端3.1 pip安装(推荐)3.2 GitHub仓库安装 4. 后端配置4.1 yolo环境4.2 引入后端模型4.3 修改脚本4.4 启动后端 5. 标注工程5.1 创建工程5.2 配置图片路径5.3 配置工程类型标签5.4 配置模型5.…...

MFC内存泄露

1、泄露代码示例 void X::SetApplicationBtn() {CMFCRibbonApplicationButton* pBtn GetApplicationButton();// 获取 Ribbon Bar 指针// 创建自定义按钮CCustomRibbonAppButton* pCustomButton new CCustomRibbonAppButton();pCustomButton->SetImage(IDB_BITMAP_Jdp26)…...

微信小程序 - 手机震动

一、界面 <button type"primary" bindtap"shortVibrate">短震动</button> <button type"primary" bindtap"longVibrate">长震动</button> 二、js逻辑代码 注&#xff1a;文档 https://developers.weixin.qq…...

剑指offer20_链表中环的入口节点

链表中环的入口节点 给定一个链表&#xff0c;若其中包含环&#xff0c;则输出环的入口节点。 若其中不包含环&#xff0c;则输出null。 数据范围 节点 val 值取值范围 [ 1 , 1000 ] [1,1000] [1,1000]。 节点 val 值各不相同。 链表长度 [ 0 , 500 ] [0,500] [0,500]。 …...

DBAPI如何优雅的获取单条数据

API如何优雅的获取单条数据 案例一 对于查询类API&#xff0c;查询的是单条数据&#xff0c;比如根据主键ID查询用户信息&#xff0c;sql如下&#xff1a; select id, name, age from user where id #{id}API默认返回的数据格式是多条的&#xff0c;如下&#xff1a; {&qu…...

涂鸦T5AI手搓语音、emoji、otto机器人从入门到实战

“&#x1f916;手搓TuyaAI语音指令 &#x1f60d;秒变表情包大师&#xff0c;让萌系Otto机器人&#x1f525;玩出智能新花样&#xff01;开整&#xff01;” &#x1f916; Otto机器人 → 直接点明主体 手搓TuyaAI语音 → 强调 自主编程/自定义 语音控制&#xff08;TuyaAI…...

Java入门学习详细版(一)

大家好&#xff0c;Java 学习是一个系统学习的过程&#xff0c;核心原则就是“理论 实践 坚持”&#xff0c;并且需循序渐进&#xff0c;不可过于着急&#xff0c;本篇文章推出的这份详细入门学习资料将带大家从零基础开始&#xff0c;逐步掌握 Java 的核心概念和编程技能。 …...

聊一聊接口测试的意义有哪些?

目录 一、隔离性 & 早期测试 二、保障系统集成质量 三、验证业务逻辑的核心层 四、提升测试效率与覆盖度 五、系统稳定性的守护者 六、驱动团队协作与契约管理 七、性能与扩展性的前置评估 八、持续交付的核心支撑 接口测试的意义可以从四个维度展开&#xff0c;首…...