本章将涉及以下案例:
使用ArcGIS Python窗体
访问ArcPy
从脚本中执行工具
使用ArcGIS桌面软件帮助系统
使用变量存储数据
访问ArcPy中的模块
引言
地理处理任务往往是耗时且重复性的工作,通常又需要定期执行。地理处理任务需要频繁地涉及到诸多数据图层及功能。针对ArcGIS的ArcPy Python站点包提供了一系列工具及其执行环境用于将数据转换为有意义的结果。使用脚本可以自动化完成地理处理任务,而且可以安排在单位最为合适的时间内执行。
ArcGIS提供了一个地理处理框架,通过一系列工具及其执行环境来自动化完成那些重复性的GIS任务。所有的工具都是对提供的输入数据集执行一定的操作后生成一个新的输出数据集。在一个较大的工作流程中,新生成的输出数据集必要情况下会作为其他地处理工具的输入数据集。ArcGIS地理处理框架提供了大量工具,每一个工具可执行特定的功能。
尽管你可以在许多不同的开发环境中编写Python地理处理脚本,不过本书将关注于内置的ArcGIS Python窗口以及Python的IDLE编辑器。
使用ArcGIS Python窗口
在本案例中,你将了解到如何使用ArcGIS Python 窗口。在第一章《Python语言基础》中,你已经了解到了如何在使用IDLE开发环境,本章介绍另一种编写地理处理脚本的开发环境。两种开发环境都可以使用,不过通常来讲你们会从ArcGIS Python 窗口开始编写脚本,编写复杂脚本再转到IDLE中。我也注意到你可能会考虑像PythonWin,Wingware,Komodo等开发环境。选择开发环境因人而异。
Getting ready
新的Python窗口是ArcGIS10版本桌面软件中的一个嵌入式交互式窗体。它适合于测试小的代码块,学习Python基础知识,创建方便快捷的工作流以及执行地理处理工具等。不过,随着脚本内容变得越来越复杂,你很快就会发现需要一个更加强壮(鲁棒性更好)的开发环境。默认情况下IDLE会随着ArcGIS桌面软件一起安装,因此IDLE理所当然地成为许多人的选择。尽管如此,对应新人来讲ArcGIS Python窗口仍是学习Python的好选择。
ArcGIS Python窗口除了用于编写代码之外还有许多功能。你可以将窗口中的内容保存为Python脚本文件,也可以将已有的Python脚本文件加载到窗体中。窗体位置可以固定或浮动。当处于浮动窗口时,窗体大小可以随意扩大或缩小。窗口也可以固定在ArcGIS界面的多个位置。你还可以通过在窗口中右键选择格式来设置窗体中的字体和文本颜色。
How to do it...
点击ArcGIS桌面软件工具条上的Python窗体按钮打开Python窗口。
1.在ArcMap中打开c:\ArcpyBook\Ch2\Crime_Ch2.mxd文件。
你可以不用打开Crime_Ch2.mxd文件。任何地图文档文件都可以在Python窗口中使用
2.点击ArcMap工具条上的Python窗口按钮打开Python窗口,见下图。Python窗口是一个浮动窗口,因此你可以根据需要缩放同时也可以将该窗口停靠在ArcMap界面中的多个位置:
Python窗体实际上是一个shell窗口,你可以在每行的输入符号>>>后面输入一行语句。右边侧栏是一个帮助窗口。
3.在Python窗体中右键单击选择加载(Load),选择C:\ArcpyBook\Ch2目录下的ListFields.py文件加载该脚本。
你还可以在窗口中右键选择格式(Format)来设置窗体中的字体和文本颜色。窗体提供了黑白两个主题,可以分别选择字体和颜色:
点击设置黑色主题(Set Black Theme)来看一下效果。如果需要花费大量时间来编写代码,你会发现深色背景主题看起来更舒服:
访问ArcPy
你在使用ArcPy提供的所有地理处理功能之前,需要首先在脚本中导入ArcPy包。这通常是你编写地理处理脚本的第一行代码。