ArcGIS中不可不知的Python使用技术_第1页
ArcGIS中不可不知的Python使用技术_第2页
ArcGIS中不可不知的Python使用技术_第3页
ArcGIS中不可不知的Python使用技术_第4页
ArcGIS中不可不知的Python使用技术_第5页
已阅读5页,还剩43页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

ArcGIS中不可不知的Python使用技术,易智瑞(中国)信息技术有限公司沈阳分公司刘君懿,Python的历史,Python是自由软件的丰硕成果之一创始人GuidovanRossum时间地点:1989年圣诞节期间在阿姆斯特丹创造名字来源:大蟒蛇飞行马戏团的爱好者渊源:从ABC发展而来主要受Modula-3的影响结合了Unixshell和C的习惯,TIOBE开发语言琅琊榜,Python的优点,简单易学免费、开源高层可移植性解释性,面向对象可扩展性可嵌入性丰富的库海量资源,跨平台语言:支持Windows/Unix/Linux/Macintosh,Python的站点包,eyed3,jupyter,pip,flask,matplotlib,pandas,numpy,jinja2,Web.py,pyreadline,ArcPy,GWPY,强制缩进,慢,Python的缺点,Python的版本,-跨平台语言,支持Windows/Unix/Linux/Macintosh-下载路径:-安装,Python2.x和3.x的区别,Python自己版本之间的比较,满分5颗星,ArcGISPythonAPI的发展历程,ArcGISPythonAPI(beta),PythonAPI,常用IDE比较,Python自带的IDE,集成开发环境(IntegrationDevelopmentEnvironment),PyCharm,Python功能包与ArcGIS平台对应关系,ArcRest/PortalPy,Arcpy,ArcGISPythonAPI,PythoninDesktop/Pro,ArcPy,Arcpy为用户提供了使用Python语言操作所有地理处理工具(包括扩展模块)的入口,并提供了多种有用的函数和类,以用于处理和询问GIS数据。使用Python和ArcPy,可以开发出大量的用于处理地理数据的实用程序。代码库:C:ProgramFiles(x86)ArcGISDesktop10.4arcpyarcpy,ArcPy,arcpy.na,arcpy.da,arcpy.mapping,arcpy.sa,可访问NetworkAnalystToolbox的所有工具(增删图层、获取属性)结合Arcpy.Describe使用,执行空间分析、空间运算,操作.mxd和.lyr扩展了数据驱动页面功能,自动导出、打印地图可发布为服务在Web端使用,数据的编辑会话表、要素类与Numpy格式互转版本、属性域和子类工作流,arcpy.ga,arcpy.time,ArcGIS中Python的用法,1.字段计算器,2.制作gp工具,ArcGIS中Python的用法,4.PythonAdd-in,数据管理,管理地理数据库(personal/file/sdeGDB)数据创建数据库连接数据备份数据过滤字段计算,属性数据,GeoDatabase,数据格式转换空间数据格式转换非空间数据格式转换数据预处理数据抽稀字段计算空间选择属性选择。元数据处理元数据填写元数据标准转换。,数据管理,来自management.py完全实现DataManagerTools,示例:Python字段计算器,将存储在字段值中类似379.826的数据处理成K379+826,第一步:!桩号!.replace(.,+)第二步:“K“+!桩号!,交通行业通常需要将道路的里程数据存储成K389+34的形式。,importarcpyfromarcpyimportenvenv.workspace=rC:UsersyanruiDocumentsArcGISDefault.gdbfcs=arcpy.ListFeatureClasses()forfcinfcs:arcpy.Delete_management(fc),示例:python窗口批量数据删除,批量删除要素类:,rasters=arcpy.ListRasters()forrasterinrasters:arcpy.Delete_management(raster),批量删除栅格:,批量删除表:,tables=arcpy.ListTables()fortableintables:arcpy.Delete_management(table),示例:Python脚本实现数据转换,ArcPy制图可视化,使用ArcPy.Mapping模块与MapDocument、Layer及其内的数据进行交互更改图层datasource获得mxd相关信息:数据源,无效图层,空间参考更改symbology、label显示、图层透明度等自动化地图集生产,示例:更改mxd文档数据源,ArcPy地理分析功能,Arcpy.sa用于使用SpatialAnalyst工具的Python模块。Arcpy.na用于使用ArcGISNetworkAnalyst扩展模块提供的网络分析功能的Python模块。Arcpy.time包含在Python中处理时间增量和时区时会用到的类、方法以及属性。,桌面Add-In插件,PythonAdd-In开发,开发工具addin_assistant向导方式创建ArcPyAdd-In工程支持创建基于ArcMap、ArcCatalog、ArcGlobe、ArcScene插件支持创建扩展模块、菜单、工具条生成各种组件类及方法下载地址:,按钮和工具组合框菜单和右键菜单Toolpalettes可停靠窗体ApplicationextensionsEditorextensionsEditorConstructionTools,示例:桌面add-in插件使用,下载PythonAdd-InWizard:,Python版本迁移,ArcGISPro使用Python3ArcPy迁移重要GP工具arcpy.mp替代arcpy.mapping可继续在ArcGISPro中使用脚本工具和Python工具箱,PythoninServer,ArcGISServer命令行实用程序,1、ArcGISServer命令行实用程序位于ArcGISforServer安装目录tools/admin目录下提供一套管理ArcGISServer的脚本命令行工具,ArcGISServer命令行实用程序,启动和停止服务,从集群添加和移除计算机,从服务定义(.sd)文件发布服务,备份或还原站点配置,定义新地图缓存,构建和删除地图缓存,在松散和紧凑格式之间转换地图缓存,使用ArcGISRESTAPI编写Python脚本,使用Python调用ArcGISAdminAPI修改ArcGISServer参数,使用ArcGISRESTAPI管理ArcGISServer,步骤1运行脚本时需要有管理员权限,必须提供一个具有管理员权限的用户名和密码:,步骤3配置参数,构筑请求,步骤2在脚本中获取和使用令牌,示例:Python脚本实现服务发布,PythoninOnline/Portal,Python使用地理平台中的资源,Python调用ArcGISPortal/onlineRESTapi来调用资源;推荐:ArcRESTpython包(RESTAPIforAGS,AGOL,webmapjson),ArcREST下载地址:,ArcREST站点包安装,1、安装requirements.txtpipinstallrrequirements.txt2、运行setup.pypythonsetup.pyinstall,示例:上传FileDGB数据到AGO,上传FileDGB数据到AGO,PythoninWeb,ArcGISPythonAPI(beta),ArcGISPythonAPI是一个全新的API,可以执行GIS分析和可视化、空间数据管理、GIS平台管理。,原生,强大,简单交互式开发可分享、更新和重新运行的分析记录,ArcGISPythonAPI功能模块,gis模块:提供管理arcgisonline或者portalforarcgis的功能,是使用GIS平台的入口。tools模块:使用arcgisonline或portal提供的各种分析功能Lyr模块:使用GIS平台提供的图层服务。viz模块:提供用来进行数据可视化和分析功能的组件。,ArcGISPythonAPI安装,下载安装Anaconda(python3,需要注册并登录用户)安装ArcGIS包condainstall-cconda-forgeipywidgetscondainstall-cesriarcgis=0.1启用map控件python-marcgis.install启动notebookjupyternotebook

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论