ArcGIS中不可不知的Python使用技术PPT课件

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Hale Waihona Puke Baidu
Python自带的IDE
• 集成开发环境(Integration Development Environment)
PyCharm
Python功能包与ArcGIS平台对应关 系
ArcGIS Python API Arcpy
桌面
Web
移动设备
Portal
Web GIS
ArcRest/PortalPy
推荐度
IDLE
手动
有(很差) 用库

开源
★★
PythonWin
手动

用库

开源
Win Onl
★★★
SPE


WPDB 存盘时 开源
★★★★
Ulipad


WPDB 自动
开源
★★★★★
Eric


类VC 自动
开源
★★★★★
BOA
手动
手动
类VC 无
开源
中文支持差 ★★★
WingIDE


类VC 手动
共享
ArcGIS中不可不知的Python使 用技术
Python的历史
Python是自由软件的丰硕成果之一 ➢创始人Guido van Rossum ➢时间地点 :1989年圣诞节期间在阿姆斯 特丹创造 ➢名字来源 :大蟒蛇飞行马戏团的爱好者 ➢渊源:从ABC发展而来 主要受Modula-3的影响 结合了Unix shell和C的习惯
ArcGIS Python API的发 展历程
基于 dispatch geoprocesso r Python 2.1
arcgisscripti ng Python 2.4
arcgisscripti ng Python 2.5
ArcPy站点 包 Python 2.6
Python 2.7 第三方包
自动化制图 数据访问 空间分析
可发布为服务在 Web端使用
arcpy.sa
执行空间分析 、空间运算
arcpy.na
可访问Network Analyst Toolbox的所有 工具(增删图层 、获取属性) 结合 Arcpy.Describe 使用
arcpy.ga
arcpy.time
ArcGIS中Python的用法
1.字段计算器
2.制作gp工具
Server
在线内容与服务
Python in Desktop/Pro
ArcPy
• Arcpy——为用户提供了使用 Python 语言操 作所有地理处理工具(包括扩展模块)的 入口,并提供了多种有用的函数和类,以 用于处理和询问 GIS 数据。使用 Python 和 ArcPy,可以开发出大量的用于处理地理数 据的实用程序。
TIOBE开发语言琅琊榜
Python的优点
• 简单 • 易学 • 免费、开源 • 高层 • 可移植性 • 解释性
• 面向对象 • 可扩展性 • 可嵌入性 • 丰富的库 • 海量资源 • ……
跨平台语言:支持Windows/Unix/Linux/Macintosh
Python的站点包
jupyter
中文要设置 ★★★★
Komodo


类VC 手动
共享
相当耗资源 ★★★★
VIM+插件




开源
★★★
emacs+插件




开源
★★★
eclipse+pydev插件 有

类VC 自动
开源
比较耗资源 ★★★★★
VS +VisualPython 无

类VC 无
共享
★★
PyCharm



自动
开源
★★★★★★
• 属性选择
GeoDatabase
• 。。。
• 元数据处理
• 元数据填写
• 元数据标准转换
• 。。
属性数据
行政区 用地性质 用地面积 …
数据管理
• 来自 management.py
创建SDE连接文件
• 完全实现 Data Manager Tools
创建ArcGIS Server连接文件
示例:Python字段计算 器
Python自己版本之间的比较,满分5颗星
2.x
3.x
运行效率
说明
3.0比2.x的整体运行效率低30%,3.1慢15%但是 3.x在字符串和整形运算上效率较高
中文编码
关键字 Print 功能
3.X默认支持中文编码,而且可以使用中文变量名, 不用任何额外声明
3.x增加了部分关键字
3.X把print语句换成了print函数
eyed3
flask
ArcPy
pyreadli ne
pip
matplotlib
jinja2
numpy
pandas
Web.py
GWPY
Python的缺点
强制缩进

Python的版本
-跨平台语言,支持 Windows/Unix/Linux/Macintosh -下载路径: -安装
Python 2.x和3.x的区别
将存储在字段值中类似379.826的数据处理成K379+826
交通行业通常需要将道路 的里程数据存储成 K389+34的形式。
第一步:!桩号! .replace(".","+") 第二步:“K“+ !桩号!
示例:python窗口批量 数据删除
批量删除要素类:
import arcpy from arcpy import env env.workspace=r'C:\Users\yanrui\Documents\ArcGIS\Default.gdb' fcs = arcpy.ListFeatureClasses() for fc in fcs:
ArcGIS中Python的用法
4.Python Add-in
数据管理
• 管理地理数据库(personal/ GDB) 空间数据
数据创建
数据库连接
数据备份
• •
数据格式转换 空间数据格式转换
数据过滤 • 非空间数据格式转
字段计算 换
• 数据预处理

……• 数据抽稀
• 字段计算
• 空间选择
• 代码库:
• C:\Program
Files
(x86)\ArcGIS\Desktop10.4\arcpy\arcpy
ArcPy
arcpy.da
arcpy.mappi ng
数据的编辑会话
表、要素类与 Numpy格式互 转
版本、属性域和 子类工作流
操作.mxd和.lyr
扩展了数据驱动 页面功能,自动 导出、打印地图
……
Python 3.4
ArcGIS Python API(beta)
ArcGIS 9.0/9.1
ArcGIS 9.2
ArcGIS 9.3
ArcGIS 10.0
ArcGIS ArcPro Python
10.4
1.2
API
常用IDE比较
IDE name
自动补全 智能感知 调试 语法检查 开源 特别注意
3.X增加了部分功能包,但是也删除了一些2.x的 功能包,总体来说差不多
操作符规则 数据类型
3.X 规则更加严格 3.X去除了long类型,现在只有一种整型int
面向对象
3.x引入抽象基类,容器模块中类型更多
成熟度
第三方包数 量
3.X的成熟度还比较低,guido认为3.x可优化的余 地还很大
3.X的第三方包远远小于2.x,特别是不同平台上 面。
相关文档
最新文档