如何使用ArcPy
什么是 ArcPy?
ArcPy 是一个 Python 站点包,可提供以实用高效的方式通过 Python 执行地理数据分析、数据转换、数据管理和地图自动化。
Python是一种解释型、面向对象、动态数据类型的高级程序设计语言。
如何使用ArcPy?
方法包括两种:
第一种:直接使用ArcGIS中的命令行,输入一句,执行一句;
第二种:创建一个Python脚本,直接执行其中的代码。
第一种,调用ArcGIS命令行:
图1.1 ArcGIS命令行
如图1.1,打开内嵌到ArcMap里面的命令行窗口,输入import arcpy,导入相应的包,即可完成相应的操作。
例如:对DEM数据进行坡度(Slope)分析
1. 首先导入一个DEM数据,如下图
图1.2 DEM数据
2. 命令行中输入以下代码:
即可提取该DEM数据的坡度(slope)分析结果,如图1.3
图1.3 坡度分析
第二种,编写脚本:
没有安装python编程软件的同学可以直接在“开始”的ArcGIS文件目录下找到IDLE(如图2.1),打开python的IDLE编译环境。(使用的是ArcGIS10.2、python2.7.3)
图2.1 IDLE位置
图2.2 IDLE
在IDLE的file菜单下,点击new window,这时你会看到,标志着命令行的三个箭头消失了,而且你可以连着输入程序语句,我们就可以在如下窗口中编写脚本程序。
图2.3
例如:编写一个提取地面坡向变率(SOA)的脚本程序。
1. 输入代码,如下
工作空间:用作地理处理工具输入和输出的默认位置
编好的窗口如下:
图2.4
2. 通过File——Save将其以 .py的格式保存,如图2.5
图2.5 保存
3. 然后打开ArcCatalog,在相应的文件夹下,创建一个工具箱(Toolbox),如图2.6
图2.6 创建工具箱
4. 在工具箱中添加该脚本,工具箱右键——添加——脚本,如图2.7
图2.7
5. 输入名称、标签和描述后(图2.8.1),下一步。
图2.8.1 添加脚本
6. 脚本文件选择刚刚创建的.py文件(图2.8.2),点击下一步
图2.8.2 添加过程
7. 在这里可以输入相应的参数,我们设置一个参数“DEM数据”,类型选择“栅格图层”,点击“完成”,如图2.8.3
图2.8.3 完成添加
8. 此时我们可以看到工具箱下多了SOA脚本工具(图2.9),双击打开,添加一个DEM数据,点击确定。
图2.9 运行脚本
9. 点击确定,脚本工具开始运行,如图2.10
图2.10
10.脚本工具运行完成,如图2.11
图2.11运行完成
11. 我们就可以在代码中设定的工作空间里得到地面坡向变率(SOA)的分析结果(图2.12)
图2.12 分析结果
结语:
ArcPy可以很方便的通过脚本调用ArcGIS的各种函数和功能。对于很多批量操作与复杂操作都可以通过编写脚本来完成,以此节省时间,提高效率。ArcPy的学习远不止此,编者也是ArcPy初学者,如有出现问题和错误,希望可以得到大家的及时指正,谢谢!
参考博文:
博客园:https://www.cnblogs.com/kkyyhh96/p/7123767.html
涉及到写代码,可参看ArcGIS帮助:
http://resources.arcgis.com/zh-CN/help/main/10.2/
投稿、编辑:郑威鹏 李雅君
校对:谢妙竹
审核:郭锐涛
指导:刘涛教授
领取专属 10元无门槛券
私享最新 技术干货