ArcGISPython实习指导选编.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
ArcGISPython实习指导选编

实习一 Python基础学习 1.什么是python Python是一种不受局限、跨平台的开源编程语言,它功能强大且简单易学。因而得到了广泛应用和支持。 ArcGIS 9.0社区中引入了Python。此后,Python被视为可供地理处理用户选择的脚本语言并得以不断发展。每个版本都进一步增强了Python体验,从而为您提供更多的功能以及更丰富、更友好的Python体验。 ESRI已将Python完全纳入ArcGIS中,并将其视为可满足用户需求的语言。下面仅介绍Python的部分优势: 易于学习,非常适合初学者,也特别适合专家使用 可伸缩程度高,适于大型项目或小型的一次性程序(称为脚本) 可移植,跨平台 可嵌入(使ArcGIS可脚本化) 稳定成熟 用户社区规模大 Python已延伸到ArcGIS中,成为了一种用于进行数据分析、数据转换、数据管理和地图自动化的语言,因而有助于提高工作效率。 2.在ArcGIS中使用Python (1)打开ArcMap,在工具栏中点击“”按钮,位置如图1-1所示,即可打开Python编辑窗口。 图1-1 (2)Python程序为解释运行,输入一行代码,按“回车”键后即可运行,如图1-2 图1-2 3.行和缩进 学习Python与其他语言最大的区别就是,Python的代码块不使用大括号({})来控制类,函数以及其他逻辑判断。python最具特色的就是用缩进来写模块。 (1)缩进的空白数量是可变的,但是所有代码块语句必须包含相同的缩进空白数量,这个必须严格执行。在Python窗口中输入如图1-3所示的代码块并运行,该代码块是严格缩进的。 图 1-3 (2)以下代码将会执行错误,如图1-4: 图4 实习二 使用ArcPy ArcPy 是一个以成功的 arcgisscripting 模块为基础并继承arcgisscripting功能进而构建而成的站点包。目的是为以实用高效的方式通过Python执行地理数据分析、数据转换、数据管理和地图自动化创建基础。 该包提供了丰富纯正的Python体验,具有代码自动完成功能(输入关键字和点即可获得该关键字所支持的属性和方法的弹出列表;从中选择一个属性或方法即可将其插入),并针对每个函数、模块和类提供了参考文档。 在Python中使用ArcPy的另一个主要原因是,Python是一种通用的编程语言。Python是一种支持动态输入的解释型语言,适用于交互式操作以及为称为脚本的一次性程序快速制作原型,同时其具有编写大型应用程序的强大功能。用ArcPy 编写的ArcGIS应用程序的优势在于,可以使用由来自多个不同领域的GIS专业人员和程序员组成的众多Python小群体开发的附加模块。 通过Python使用工具 地理处理工具都具有一组固定的参数,这些参数为工具提供执行所需的信息。在Python中使用工具时,必须正确设置工具的参数值,以便在脚本运行时工具可以执行。下面以缓冲区分析为例练习通过Python使用工具的方法。 (1)点缓冲 在ArcMap中打开实验数据中的 图2-1 2)打开Python窗口在其中输入图2所示的代码运行结果如图3。运行后会在目录中生成一个“pointBuffer.shp”文件,这个文件的文件名和路径均在代码中设置。 图2 图3 (2)线缓冲 在ArcMap中打开实验数据中的 图4 2)打开Python窗口在其中输入图5所示的代码运行结果如图6。 图5 图6 3)取消选中重新运行一次代码运行结果如图7所示 图7 (3)多层缓冲 在输入要素周围的指定距离内创建多个缓冲区。使用缓冲距离值可随意合并和融合这些缓冲区,以便创建非重叠缓冲区 在ArcMap中打开实验数据中的8所示的程序结果如图9。多个缓冲区的距离为10,20,30]”,可根据实际情况自己设定。 图8 图9 2.使用Python处理游标 游标是一种数据访问对象,可用于在表中迭代一组行或者向表中插入新行。游标有三种形式:搜索、插入或更新。 arcpy.da.InsertCursor(in_table, field_names) 插入行 arcpy.da.SearchCursor(in_table, field_names, {where_clause}, {spatial_reference}, {explode_to_points}, {sql_clause}) 只读访问 arcpy.da.UpdateCursor(in_table, field_names, {where_clause}, {spatial_reference}, {explode_to_point

文档评论(0)

jiayou10 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8133070117000003

1亿VIP精品文档

相关文档