桌面ArcGIS包含800多种可在Python脚本中运行的地理处理工具。

通过Python脚本来运行地理处理工具,可以处理复杂的工作和执行批处理任务。

案例一:使用脚本执行地理处理工具(以裁剪为例)

查看帮助文档模仿的代码:

 # Name: Clip_Example2.py

 # Description: Clip major roads that fall within the study area.

 # Import system modules

 import arcpy

 from arcpy import env

 # Set workspace

 env.workspace = "F:\【the_path_of_grace】\ArcpyBook"

 # Set local variables

 in_features = "data/CityOfSanAntonio.gdb/Burglary"

 clip_features = "Ch5/EdgewoodSD.shp"

 out_feature_class = "Ch5/ClpBurglary.shp"

 xy_tolerance = ""

 # Execute Clip

 arcpy.Clip_analysis(in_features, clip_features, out_feature_class, xy_tolerance)

工作原理:

在Python脚本中,可以参照<toolname>_<toolboxalias>语法来调用工具。

注:toolboxalias是工具箱的别名

拓展:

效果图:

案例二:将一个工具的输出作为另一个工具的输入

步骤:①缓冲区分析->②创建要素图层->③按位置选择图层

查看帮助文档模仿的代码:

 # Import system modules
import arcpy
from arcpy import env # Set workspace
env.workspace = "F:\【the_path_of_grace】\ArcpyBook\data\TravisCounty"
try:
# Buffer areas of impact around major roads
streams = "Streams.shp"
streamsBuffer = "StreamsBuffer"
distanceField = "2640 Feet"
sideType = "FULL"
endType = "ROUND"
dissolveType = "ALL"
schools2mile = "Schools.shp"
schoolsLyrFile = 'Schools2Mile_lyr' arcpy.Buffer_analysis(streams, streamsBuffer, distanceField,sideType,endType,dissolveType) # First, make a layer from the feature class
arcpy.MakeFeatureLayer_management(schools2mile, schoolsLyrFile) # Then add a selection to the layer based on location to features in another feature class
arcpy.SelectLayerByLocation_management (schoolsLyrFile, "intersect", streamsBuffer)
except Exception as e:
print e.message

执行过程:

效果图:

谢谢观看!

使用python脚本执行地理处理工具的更多相关文章

  1. 【原创】控制perl和python脚本执行过程中脚本文件是否关闭的方法

    引子 跟踪perl和python脚本对文件的访问,实际过程中,perl和python解析器在解析完脚本后,直接关闭了 脚本文件,在进程中查询不到是访问文件的脚本文件名称. shell.perl和pyt ...

  2. Python输出内容的三种方式:print输出 python脚本执行 linux直接执行

    1.  在linux中安装python后,在linux命令行中输入python即可切换到Python命令行下 退出python命令行的命令: 老版本:ctrl+D 新版本:quit();或exit() ...

  3. python脚本执行Scapy出现IPv6警告WARNING解决办法

    安装完scapy,写了脚本执行后执行: WARNING: No route found for IPv6 destination :: (no default route?) 原因是用 from sc ...

  4. python脚本执行报错整理

    people = [ {'name':'alex','age':1000}, {'name':'wuxie','age':100}, {'name':'wangcanghai','age':9000} ...

  5. python脚本执行报错:SyntaxError: Non-ASCII character '\xe6' in file ip.py on line 4...

    报错信息 [root@chenbj ~]# python ip.py 192.168.1.1 File "ip.py", line 4 SyntaxError: Non-ASCII ...

  6. Android上执行python脚本-QPython

    看书,发现android可以跑python. 尝试了一下. 首先需要在手机上安装python环境,通过安装apk实现,这个apk叫QPython,还有同类的比如SL4A. QPython的官网:htt ...

  7. crontab 中 python(cx_Oracle)脚本执行时需要用户环境变量,怎么办??

    import cx_Oracle Traceback (most recent call last): File "", line 1, in ? ImportError: lib ...

  8. 如何解决Python脚本在Linux和Windows上的格式问题

    python是一种对缩进有严格要求的语言, Python脚本可以使用非常多的工具进行编写,笔者在Linux系统使用JEdit进行Python脚本编写,由于在Linux编写脚本比较痛苦,比如想一眼看出相 ...

  9. python脚本,重新设置图片大小

    最近在做一个android的电台,此android程序要访问自己服务器上的歌曲文件,包括图片.这些文件要自己手动上传. 每天十首歌,需要二十个图片(一个大图450*450.一个小图140*140). ...

随机推荐

  1. join的使用

    我们还是以这四张表为例:1.left joinselect * from student a left join score b on a.sid=b.sid; 也就是说A中的元素都会显示,没有值的用 ...

  2. Scrapy 框架入门简介

    一.Scrapy框架简介 Scrapy 是用 Python 实现的一个为了爬取网站数据.提取结构性数据而编写的应用框架. Scrapy 常应用在包括数据挖掘,信息处理或存储历史数据等一系列的程序中. ...

  3. Linux之ELF文件初探

    对比windowsPE文件与概述 在windows中可执行文件是pe文件格式,Linux中可执行文件是ELF文件,其文件格式是ELF文件格式,在Linux下的ELF文件除了可执行文件(Excutabl ...

  4. 四、docker 仓库(让我们的镜像有处可存)

    前言 前面讲完了docker 镜像和容器,以及通过Dockerfile 定制属于我们自己的镜像,那那现在就是需要将我们自己定制的镜像存放到仓库中供他们使用.这一套流程才算是正式走完了.从获取镜像,操作 ...

  5. Idea导入Web项目并发布到Tomcat

    Idea导入现有的Web项目并发布到Tomcat,发现Tomcat没有自动发布 问题: 导入一个Web项目时,idea并没有把他当成web,所以需要自己修改项目结构 1.导入项目 打开 File-&g ...

  6. TICK技术栈(二)Telegraf安装及使用

    1.什么是Telegraf? Telegraf是一个用Go语言开发的代理程序,可用于收集和报告指标.Telegraf插件直接从其运行的系统中获取各种指标,从第三方API中提取指标,甚至通过StatsD ...

  7. [springboot 开发单体web shop] 4. Swagger生成Javadoc

    Swagger生成JavaDoc 在日常的工作中,特别是现在前后端分离模式之下,接口的提供造成了我们前后端开发人员的沟通 成本大量提升,因为沟通不到位,不及时而造成的[撕币]事件都成了日常工作.特别是 ...

  8. 学习笔记59_python字符串处理

    python中,字符串可以使用 '或"括起来 1. 要想写成  "hellow "aaaa"  ",在python中,可以"hellow ' ...

  9. Mybaits 源码解析 (九)----- 全网最详细,没有之一:一级缓存和二级缓存源码分析

    像Mybatis.Hibernate这样的ORM框架,封装了JDBC的大部分操作,极大的简化了我们对数据库的操作. 在实际项目中,我们发现在一个事务中查询同样的语句两次的时候,第二次没有进行数据库查询 ...

  10. [知识图谱]Neo4j知识图谱构建(neo4j-python-pandas-py2neo-v3)

    neo4j-python-pandas-py2neo-v3 利用pandas将excel中数据抽取,以三元组形式加载到neo4j数据库中构建相关知识图谱 Neo4j知识图谱构建 1.运行环境: pyt ...