【280】◀▶ ArcPy 常用工具说明
目录:
一、相关技巧
技巧1:将工具从工具箱拖拽到 Python 窗体中自动会生成相应的函数,于是可以快速定位函数名称!

技巧2:将通过工具箱实现的操作结果拖拽到 Python 窗体,可以自动生成处理的代码,于是可以快速了解相关参数含义!

二、工具说明
| 01 | CalculateStatistics | 计算栅格数据集或镶嵌数据集的统计数据。 | |
| 02 | MakeXYEventLayer | 根据源表中定义的X和Y坐标创建新的点要素图层。 | |
| 03 | Idw | 使用反距离加权法 (IDW) 将点插值成栅格表面。 | |
| 04 | RasterCalculator | 使用 Python 语法构建和执行单个地图代数表达式。 | |
| 05 | Clip_analysis | 提取与裁剪要素相重叠的输入要素。 | |
| 06 | ExtractByMask | 提取所定义掩膜区域内的栅格像元。 | |
| 07 | CalculateAreas_stats | 计算面要素类中每个要素的面积值。 | |
| 08 | AddField | 向表或要素类表、要素图层等添加新字段。 | |
| 09 | CalculateField | 为要素类、要素图层或栅格计算字段的值。 | |
| 10 | AlterField | 重命名字段和字段别名,或更改字段属性。 | |
| 11 | ApplySymbologyFromLayer | 此工具用于将来自图层的符号系统应用到输入图层。 | |
| 12 | CreateFeatureclass | 创建空要素类。 | |
--------------- |
| 序号 | 函数名称 |
功能说明 |
语法 & 举例 | ||
| 01 | Calculate Statistics (Data Management) |
====<<<< Description >>>>==== 计算栅格数据集或镶嵌数据集的统计数据。需要对栅格和镶嵌数据集进行统计方可执行诸如应用对比度拉伸或分类数据等任务。 ====<<<< Syntax >>>>==== CalculateStatistics_management (in_raster_dataset, {x_skip_factor}, {y_skip_factor}, {ignore_values}, {skip_existing}, {area_of_interest}) ====<<<< Parameter >>>>==== ◈ in_raster_dataset:输入栅格数据集或镶嵌数据集。 |
# 获取内部的栅格数据 |
||
| 02 |
====<<<< Description >>>>==== 根据源表中定义的 X 和 Y 坐标创建新的点要素图层。如果源表包含 Z 坐标(高程值),则可以在创建事件图层时指定该字段。由此工具创建的图层是临时图层。相当于 File -> Add Data -> Add XY Data ====<<<< Syntax >>>>==== MakeXYEventLayer_management (table, in_x_field, in_y_field, out_layer, {spatial_reference}, {in_z_field}) ====<<<< Parameter >>>>==== ◈ table:定义要创建的点要素位置的表(包含 X 和 Y 坐标)。 |
# 获取内部的数据 |
|||
| 03 | IDW (Spatial Analyst) |
====<<<< Description >>>>==== 使用反距离加权法 (IDW) 将点插值成栅格表面。 ====<<<< Syntax >>>>==== Idw (in_point_features, z_field, {cell_size}, {power}, {search_radius}, {in_barrier_polyline_features}) ====<<<< Parameter >>>>==== ◈ in_point_features:包含要插值到表面栅格中的 z 值的输入点要素。 ---------------------------------------------------------------------------------- ====<<<< Return Value >>>>==== ◈ out_raster:输出插值后的表面栅格。(不写扩展名的话会生成带有文件夹形式的栅格数据,如果写 *.tif,则直接生成 tif 文件,参考:Raster 类) |
# 获取内部的数据 |
||
| 04 | Raster Calculator (Spatial Analyst) |
====<<<< Description >>>>==== 在类似计算器的界面中,使用 Python 语法构建和执行单个地图代数表达式。 注意:引用函数的名称为:arcpy.gp.RasterCalculator_sa ====<<<< Syntax >>>>==== RasterCalculator (expression, output_raster) ====<<<< Parameter >>>>==== ◈ expression:“地图代数”表达式。(表达式通过单引号连接,因为双引号需要显示在SQL语句中,例如变量名称) |
lyrs = arcpy.mapping.ListLayers(mxd) # 注意写表达式的时候不能有字符串函数什么的,而且变量名需要用双引号 |
||
| 05 | Clip (Spatial Analyst) |
====<<<< Description >>>>==== 提取与裁剪要素相重叠的输入要素。(切割矢量) ====<<<< Syntax >>>>==== Clip_analysis (in_features, clip_features, out_feature_class, {cluster_tolerance}) ====<<<< Parameter >>>>==== ◈ in_features:要裁剪的要素。(图层也可以) |
arcpy.env.workspace=r"D:\Working\2017" |
||
| 06 | Extract by Mask (Spatial Analyst) |
====<<<< Description >>>>==== 提取所定义掩膜区域内的栅格像元。(切割栅格) 注意:引用函数的名称为:arcpy.sa.RasterCalculator_sa ====<<<< Syntax >>>>==== ExtractByMask (in_raster, in_mask_data) ====<<<< Parameter >>>>==== ◈ in_raster:提取像元的输入栅格。(图层也可以) ---------------------------------------------------------------------------------- ====<<<< Return Value >>>>==== ◈ out_raster:输出插值后的表面栅格。(不写扩展名的话会生成带有文件夹形式的栅格数据,如果写 *.tif,则直接生成 tif 文件,参考:Raster 类) |
# mon 用来命名文件 |
||
| 07 | CalculateAreas_stats |
====<<<< Description >>>>==== 计算面要素类中每个要素的面积值。 ====<<<< Syntax >>>>==== CalculateAreas_stats((Input_Feature_Class, Output_Feature_Class) ====<<<< Parameter >>>>==== ◈ Input_Feature_Class:输入面要素类。 |
>>> import arcpy |
||
| 08 | AddField_management |
====<<<< Description >>>>==== 向表或要素类表、要素图层、栅格目录和/或带属性表的栅格添加新字段。 ====<<<< Syntax >>>>==== AddField_management (in_table, field_name, field_type, {field_precision}, {field_scale}, {field_length}, {field_alias}, {field_is_nullable}, {field_is_required}, {field_domain}) ====<<<< Parameter >>>>==== ◈ in_table:要添加指定字段的输入表。(shapefile、栅格目录等) |
# 添加文本字段 |
||
| 09 | CalculateField_management |
====<<<< Description >>>>==== 为要素类、要素图层或栅格计算字段的值。 ====<<<< Syntax >>>>==== CalculateField_management (in_table, field, expression, {expression_type}, {code_block}) ====<<<< Parameter >>>>==== ◈ in_table:包含将通过新的计算进行更新的字段的表。 ---------------------------------------------------------------------------------- 参考:【311】Python 构建 ArcMap 标注表达式 注意:两者的表达式形式略有不同,推荐的方法是先通过 ArcMap 实现,然后将代码添加到 ArcPy 中。 参考:计算字段示例(官方帮助) |
代码块说明:在 code_block 对应参数的部分编写函数,用三引号,在 expression 对应参数进行调用 # 默认用中括号作为参数 |
||
| 10 | AlterField_management |
====<<<< Description>>>>==== 重命名字段和字段别名,或更改字段属性。 ====<<<< Syntax >>>>==== AlterField_management (in_table, field, {new_field_name}, {new_field_alias}, {field_type}, {field_length}, {field_is_nullable}, {clear_field_alias}) ====<<<< Parameters >>>>==== ◈ in_table:包含待更改字段的输入表或要素类。 ---------------------------------------------------------------------------------- 参考:Parameters not valid in batch Alter field Arcpy 参考:Change field names with Python 说明:在 ArcGIS 10.4.1 版本测试的时候一直提示 Invalid input,目前没解决。(2018-4-25) |
|||
| 11 | ApplySymbology FromLayer_management |
====<<<< Description >>>>==== 此工具用于将来自图层的符号系统应用到输入图层。此工具可应用于要素、栅格、网络分析以及 ArcMap 内容列表中的 TIN 地理统计层文件或图层。 ====<<<< Syntax >>>>==== ApplySymbologyFromLayer_management (in_layer, in_symbology_layer) ====<<<< Parameter >>>>==== ◈ in_layer:将应用符号系统的图层。 |
# 获取图层 |
||
| 12 | CreateFeatureclass _management |
====<<<< Description >>>>==== 在 ArcSDE 地理数据库、文件地理数据库或个人地理数据库中创建空要素类;在文件夹中此工具将创建 shapefile。 ====<<<< Syntax >>>>==== CreateFeatureclass_management (out_path, out_name, {geometry_type}, {template}, {has_m}, {has_z}, {spatial_reference}, {config_keyword}, {spatial_grid_1}, {spatial_grid_2}, {spatial_grid_3}) ====<<<< Parameter >>>>==== ◈ out_path:将在其中创建输出要素类的 ArcSDE 地理数据库、文件地理数据库、个人地理数据库或文件夹。此工作空间必须已经存在。 |
>>> import arcpy |
||
---- |
------------------- |
-------------------------------------------------- |
【280】◀▶ ArcPy 常用工具说明的更多相关文章
- js常用工具类.
一些js的工具类 复制代码 /** * Created by sevennight on 15-1-31. * js常用工具类 */ /** * 方法作用:[格式化时间] * 使用方法 * 示例: * ...
- Linux 常用工具小结:(5) lftp工具使用
Linux 常用工具小结:(1) lftp工具使用. 这里会按照一些比较常用的功能列出,并举一个具体的例子逐一解释功能. 通常使用ftp过程是登陆ftp,浏览ftp内容,下载ftp文件,或者上传ftp ...
- spring中常用工具类介绍
http://www.cnblogs.com/langtianya/p/3875103.html 文件资源操作 Spring 定义了一个 org.springframework.core.io ...
- IOS开发--常用工具类收集整理(Objective-C)(持续更新)
前言:整理和收集了IOS项目开发常用的工具类,最后也给出了源码下载链接. 这些可复用的工具,一定会给你实际项目开发工作锦上添花,会给你带来大大的工作效率. 重复造轮子的事情,除却自我多练习编码之外,就 ...
- Apache Commons 常用工具类整理
其实一直都在使用常用工具类,只是从没去整理过,今天空了把一些常用的整理一下吧 怎么使用的一看就明白,另外还有注释,最后的使用pom引入的jar包 public class ApacheCommonsT ...
- Android 常用工具类之SPUtil,可以修改默认sp文件的路径
参考: 1. 利用Java反射机制改变SharedPreferences存储路径 Singleton1900 2. Android快速开发系列 10个常用工具类 Hongyang import ...
- 封装一个简单好用的打印Log的工具类And快速开发系列 10个常用工具类
快速开发系列 10个常用工具类 http://blog.csdn.net/lmj623565791/article/details/38965311 ------------------------- ...
- Java程序员常用工具集
我发现很多人没办法高效地解决问题的关键原因是不熟悉工具,不熟悉工具也还罢了,甚至还不知道怎么去找工具,这个问题就大条了.我想列下我能想到的一个Java程序员会用到的常用工具. 一.编码工具 1.IDE ...
- 第二章 Qt常用工具的介绍
第二章 Qt常用工具的介绍 (1)No.1 qmake 相信编写过Makefile的开发人员,随着工程中源码的级数递增和以类型.功能.模块组织源码的子目录的增多,都不愿意重复机械地手工编写这个工程管理 ...
随机推荐
- 关于Object类的equals方法和hashCode方法
关于Object类的equals的特点,对于非空引用: 1.自反性:x.equals(x) return true : 2.对称性:x.equals(y)为true,那么y.equals(x)也为tr ...
- form表单的提交地址一定要是完整的绝对地址
<form action="<%=path%>/servlet/DologinServlet" =<form action="<%=requ ...
- 静态嵌套类(Static Nested Class)和内部类(Inner Class)的不同?
Static Nested Class是被声明为静态(static)的内部类,它可以不依赖于外部类实例被实例化.而通常的内部类需要在外部类实例化后才能实例化,其语法看起来挺诡异的,如下所示. /** ...
- Http权威指南(概述篇总结)
之前的<锋利的jQuery>后面陆续翻完了,实在觉得没什么值得记录的,也就没继续写了,然后看见书架上有 本去年买的<Http权威指南>,其实做web编程的,对于Http协议还是 ...
- 《Drools7.0.0.Final规则引擎教程》第4章 4.2 auto-focus
auto-focus 在agenda-group章节,我们知道想要让AgendaGroup下的规则被执行,需要在代码中显式的设置group获得焦点.而此属性可配合agenda-group使用,代替代码 ...
- mac root
我在mac下,用su登录root用户 但是提醒 su:Sorry 然后按照网上的方法弄了好多次,都没成功,说是要修改/etc/group 文件中,wheel后添加自己的用户名,用逗号分隔多个用户, ...
- 如何突破JAVA程序员三年的门槛
第一阶段:三年 我认为三年对于程序员来说是第一个门槛,这个阶段将会淘汰掉一批不适合写代码的人.这一阶段,我们走出校园,迈入社会,成为一名程序员,正式从书本 上的内容迈向真正的企业级开发.我们知道如何团 ...
- 《Ubuntu入门基础》第三篇
创建虚拟磁盘
- [QT][转载]Qt:使用C++还是QML
From: http://blog.csdn.net/rl529014/article/details/51378734 本质上,Qt 是一个C++类库.在引入 QML 以前,所有的开发都是基于 C+ ...
- ④SpringBoot之thymeleaf使用
本文介绍SpringBoot使用的模板技术thymeleaf以及通过webJar进行前端资源的引入以及使用thymeleaf介绍简单说, Thymeleaf 是一个跟 Velocity.FreeMar ...