ArcGIS中不可不知的Python使用技术

上传人:一*** 文档编号:243024713 上传时间:2024-09-14 格式:PPT 页数:48 大小:19.30MB
返回 下载 相关 举报
ArcGIS中不可不知的Python使用技术_第1页
第1页 / 共48页
ArcGIS中不可不知的Python使用技术_第2页
第2页 / 共48页
ArcGIS中不可不知的Python使用技术_第3页
第3页 / 共48页
点击查看更多>>
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,#,ArcGIS中不可不知的Python使用技术,易智瑞(中国)信息技术有限公司沈阳分公司,刘君懿,Python,的历史,Python,是自由软件的丰硕成果之一,创始人,Guido van Rossum,时间地点,:1989,年圣诞节期间在阿姆斯特丹创造,名字来源,:,大蟒蛇飞行马戏团的爱好者,渊源,:,从,ABC,发展而来,主要受,Modula-3,的影响,结合了,Unix shell,和,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,-,下载路径:,http:/www.python.org,-,安装,Python 2.x,和,3.x,的区别,Python,自己版本之间的比较,满分,5,颗星,2.x,3.x,说明,运行效率,3.0,比,2.x,的整体运行效率低,30%,,,3.1,慢,15%,但是,3.x,在字符串和整形运算上效率较高,中文编码,3.X,默认支持中文编码,而且可以使用中文变量名,不用任何额外声明,关键字,3.x,增加了部分关键字,Print,3.X,把,print,语句换成了,print,函数,功能,3.X,增加了部分功能包,但是也删除了一些,2.x,的功能包,总体来说差不多,操作符规则,3.X,规则更加严格,数据类型,3.X,去除了,long,类型,现在只有一种整型,int,面向对象,3.x,引入抽象基类,容器模块中类型更多,成熟度,3.X,的成熟度还比较低,,guido,认为,3.x,可优化的余地还很大,第三方包数量,3.X,的第三方包远远小于,2.x,,特别是不同平台上面。,ArcGIS Python API,的发展历程,ArcGIS 9.0/9.1,ArcGIS 9.2,ArcGIS,9.3,ArcGIS,10.4,ArcPro,1.2,arcgisscripting,Python 2.4,基于,dispatch,geoprocessor,Python 2.1,Python 2.7,第三方包,自动化制图,数据访问,空间分析,ArcPy,站点包,Python 2.6,Python 3.4,arcgisscripting,Python 2.5,ArcGIS,10.0,ArcGIS Python API(beta),Python API,常用,IDE,比较,IDE name,自动补全,智能感知,调试,语法检查,开源,特别注意,推荐度,IDLE,手动,有,(,很差,),用库,无,开源,PythonWin,手动,有,用库,无,开源,Win Onl,SPE,无,有,WPDB,存盘时,开源,Ulipad,有,有,WPDB,自动,开源,Eric,有,有,类,VC,自动,开源,BOA,手动,手动,类,VC,无,开源,中文支持差,WingIDE,有,有,类,VC,手动,共享,中文要设置,Komodo,无,有,类,VC,手动,共享,相当耗资源,VIM+,插件,有,无,无,无,开源,emacs+,插件,有,无,无,无,开源,eclipse+pydev,插件,有,有,类,VC,自动,开源,比较耗资源,VS +VisualPython,无,有,类,VC,无,共享,PyCharm,有,有,有,自动,开源,Python,自带的,IDE,集成开发环境,(Integration Development Environment),PyCharm,Python,功能包与,ArcGIS,平台对应关系,桌面,Web,移动设备,Web GIS,Server,在线内容与服务,Portal,ArcRest/PortalPy,Arcpy,ArcGIS Python API,Python,in Desktop/Pro,ArcPy,Arcpy,为用户提供了使用,Python,语言操作所有地理处理工具(包括扩展模块)的入口,并提供了多种有用的函数和类,以用于处理和询问,GIS,数据。使用,Python,和,ArcPy,,可以开发出大量的用于处理地理数据的实用程序。,代码库:,C:Program Files (x86)ArcGISDesktop10.4arcpyarcpy,ArcPy,arcpy.na,arcpy.da,arcpy.mapping,arcpy.sa,可访问,Network Analyst,Toolbox,的所有工具(增删图层、获取属性),结合,Arcpy.Describe,使用,执行空间分析、空间运算,操作,.mxd,和,.lyr,扩展了数据驱动页面功能,自动导出、打印地图,可发布为服务在,Web,端使用,数据的编辑会话,表、要素类与,Numpy,格式互转,版本、属性域和子类工作流,arcpy.ga,arcpy.time,ArcGIS,中,Python,的用法,1.,字段,计算器,2.,制作,gp,工具,ArcGIS,中,Python,的用法,4.Python Add-in,数据管理,管理地理数据库(,personal/file/sde GDB,),数据创建,数据库连接,数据备份,数据过滤,字段计算,空间数据,属性数据,行政区,用地性质,用地面积,GeoDatabase,数据格式转换,空间数据格式转换,非空间数据格式转换,数据预处理,数据,抽稀,字段计算,空间选择,属性选择,。,元数据处理,元数据填写,元数据标准转换,。,数据管理,来自,management.py,完全实现,Data Manager Tools,创建,SDE,连接文件,创建,ArcGIS Server,连接文件,示例:,Python,字段计算器,将存储在字段值中类似,379.826,的数据处理,成,K379+826,第一步:,!,桩号,! .replace,(.,+),第二,步:,“K“+,!,桩号,!,交通行业通常需要将道路的里程数据存储成,K389+34,的形式。,import arcpy,from,arcpy import,env,env.workspace=rC,:UsersyanruiDocumentsArcGISDefault.gdb,fcs,= arcpy.ListFeatureClasses(),for,fc in,fcs:,arcpy.Delete_management(fc),示例:,python,窗口批量数据删除,批量删除要素类:,rasters=arcpy.,ListRasters,(),for,raster in,rasters:,arcpy.Delete_management(raster),批量删除栅格:,批量删除,表,:,tables = arcpy.,ListTables,(),for,table in,tables,:,arcpy.Delete_management(table,),示例:,Python,脚本实现数据转换,ArcPy,制图可视化,使用,ArcPy.Mapping,模块,与,MapDocument,、,Layer,及其内的数据进行交互,更改图层,datasource,获得,mxd,相关信息:数据源,无效图层,空间参考,更改,symbology,、,label,显示、图层透明度等,自动化地图集生产,示例,:更改,mxd,文档数据源,ArcPy,地理分析功能,Arcpy.sa,用于使用,Spatial Analyst,工具的,Python,模块。,Arcpy.na,用于使用,ArcGIS Network Analyst,扩展模块提供的网络分析功能的,Python,模块。,Arcpy.time,包含在,Python,中处理时间增量和时区时会用到的类、方法以及属性。,基础方法,自动化制图模块,地统计分析模块,空间分析模块,ArcPy,桌面,Add-In,插件,Python Add-In,开发,开发工具,addin_assistant,向导方式创建,ArcPy Add-In,工程,支持创建基于,ArcMap,、,ArcCatalog,、,ArcGlobe,、,ArcScene,插件,支持创建扩展模块、菜单、工具条,生成各种组件类及,方法,下载地址:, palettes,可停靠窗体,Application extensions,Editor extensions,Editor Construction Tools,示例:桌面,add-in,插件使用,下载,Python Add-In Wizard:, Pro,使用,Python 3,ArcPy,迁移,重要,GP,工具,arcpy.mp,替代,arcpy.mapping,可继续在,ArcGIS Pro,中使用脚本工具和,Python,工具箱,Python in Server,ArcGIS,Server,命令行实用程序,1,、,ArcGIS Server,命令行实用程序,位于,ArcGIS for Server,安装目录,tools/admin,目录下,提供一套管理,ArcGIS Server,的脚本命令行工具,ArcGIS Server,命令行实用程序,启动和停止服务,从集群添加和移除计算机,从服务定义,(.sd),文件发布服务,备份或还原站点配置,定义新地图缓存,构建和删除地图缓存,在松散和紧凑格式之间转换地图缓存,使用,ArcGIS REST API,编写,Python,脚本,使用,Python,调用,ArcGIS Admin API,修改,ArcGIS Server,参数,使用,ArcGIS REST,API,管理,ArcGIS Server,步骤,1,运行脚本时需要有管理员权限,必须提供一个具有管理员权限的用户名和密码:,步骤,3,配置参数,构筑请求,步骤,2,在脚本中获取和使用令牌,示例:,Python,脚本实现,服务发布,Python,in Online/Portal,Python,使用地理平台中的资源,Python,调用,ArcGIS Portal/online REST api,来调用资源;,推荐:,ArcRESTpython,包(,REST API for AGS,AGOL,webmap,json,),ArcREST,下载地址:https,:/ Server,管理,PortaAGSAGOL,站点;,管理内容;,管理用户,ArcGIS Portal/Online,item,user,webmap,ArcREST,站点包安装,1,、安装,requirements.txtpip install r requirements.txt,2,、运行,setup.py python setup.py install,示例:上传,FileDGB,数据到,AGO,上传,FileDGB,数据到,AGO,Python,in Web,ArcGIS Python API,(,beta),ArcGIS,Python API,是一个全新的,API,可以执行,GIS,分析和可视化、空间数据管理、,GIS,平台管理。,原,生,强大,简单,交互式开发,可分享、更新和重新运行的分析记录, Python API,功能模块,gis,模块:提供管理,arcgis online,或者,portal for arcgis,的功能,是使用,GIS,平台的入口。,tools,模块:使用,arcgis online,或,portal,提供的各种分析功能,Lyr,模块:使用,GIS,平台提供的图层服务。,viz,模块:提供用来进行数据可视化和分析功能的组件。,ArcGIS Python API,安装,下载安装,Anaconda,(,python 3,需要注册并登录用户),安装,ArcGIS,包,conda install -c conda-forge ipywidgets,conda,install -c esri,arcgis=0.1,启用,map,控件,python -m,arcgis.install,启动,notebook,jupyter,notebook,测试安装,from arcgis.gis import *,gis,= GIS(),gis.map,(),示例:,ArcGIS,Python,API,搜索与展现,总 结,重新认识,ArcGIS Python,1,、,ArcGIS,Python,能做什么,?,2,、,ArcGIS Python,的,适用,场景?,3,、,哪些人需要使用,ArcGIS Python,?,ArcGIS Python,官方资源,Esri Resource Center,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 小学资料


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!