• [ArcPy百科]第一节:何为arcpy


    准备用比较长的一个时间,把有关ArcPy的相关知识都整理一遍,所以从今天开始,开一个新的系列,即“ArcPy百科”,在这里面会逐步整理和撰写有ArcPy有关的所有知识。

    面向对象:ArcGIS/GeoScene软件使用的码农们,且具备一定的Python开发经验和能力。

    全文用markdown语法编写,源码和文章全部都在gitee上同步

    第一节:何为arcpy

    什么是arcpy

    1. ArcPy 是一个 Python 站点包

    包:package:是Python的一种代码组织结构,本质上来说,也是一种模块。(在Python里面,大部分情况下,包和模块的书语及概念经常相互通用)
    • 包通常多个彼此密切相关(并且可能相互依赖)的模块

    站点包:site package:是一种特殊包,在Python的安装目录下面,有个专门的文件夹就叫做site-package,用于安装各种Python工具包,所以把这些直接安装在site-package里面的工具包,就叫做站点包。
    • 站点包是本地安装的包,可供该计算机的所有用户使用。“站点”是本地计算机。使软件包成为站点软件包的原因与它的安装方式有关,而不是其实际内容。
    • 因为术语“站点包”与包在本地计算机上的安装方式而不是其内容有关,所以从编写代码的实际角度来看,包和站点包之间的区别并不重要。

    2. ArcPy可提供如下能力:

    • 以实用高效的方式通过 Python 执行地理数据分析、数据转换、数据管理和地图自动化。
    • 快速调用ArcGIS/GeoScene提供的地理处理工具以及其他函数、类和模块、并且可以创建更加灵活可控的工作流。
    • 访问ArcGIS/GeoScene软件生成的工程内容、资源、配置,以及进行操作处理。
    • 利用第三方Python工具包,与GIS软件进行互补。
    • 封装自定义的脚本为工具包,发布给其他人使用。

    3. ArcPy涉及的专用模块如下:

    此处是Pro的ArcPy 与ArcMap不同
    • 数据访问模块 (arcpy.da)
    • 制图模块 (arcpy.mp)
    • 元数据模块 (arcpy.metadata)
    • 共享模块 (arcpy.sharing)
    • Image Analyst模块 (arcpy.ia)
    • Spatial Analyst 模块 (arcpy.sa)
    • Network Analyst 模块(arcpy.nax 和 arcpy.na)
    • Workflow Manager 模块 (arcpy.wmx)

    4. Q & A

    1. 是否可以不安装ArcGIS/GeoScene,只独立安装ArcPy?
    • 答:不可以。ArcPy仅能依赖于ArcGIS/GeoScene平台存在,因为ArcPy的大部分功能接口,只是通过Python调度ArcGIS/GeoScene底层的核心接口,所以不能脱离ArcGIS/GeoScene平台存在。
    1. 哪些ArcGIS/GeoScene产品,具有ArcPy能力?
    • 答:如下产品具有ArcPy能力
      • ArcGIS /GeoScene Pro
      • ArcGIS Desktop (ArcMap)
      • ArcGIS Engine
      • ArcGIS/GeoScene Runtime(需要有local Server)
      • ArcGIS/GeoScene Enterprise(原Server)
      • ArcGIS/GeoScene Notebook Server
    1. ArcPy是否可以在Linux、MacOS等其他非Windows平台上使用?
    • 答:
      • 非Windows平台上可以通过runtime和Enterprise两个产品实现ArcPy功能。
      • 另外可以通过云平台技术(ArcGIS/GeoScene Notebook Server)来实现ArcPy功能。
    1. ArcPy有没有开源版本?
    • 答:没有,ArcPy是ArcGIS/GeoScene产品的核心组件之一,并非独立的产品。但是里面很多功能,有一些第三方包替代。
      • 例如空间数据处理有geopandas、GDLA等工具包;空间统计有PySAL、PyGeoDa等包。
    1. 为什么我的Jupyter Notebook 环境里面无法导入ArcPy
    • 答:需要使用ArcGIS/GeoScene的Python环境。
      • 使用ArcGIS/GeoScene一并安装的Jupyter Notebook

      • 利用ArcGIS/GeoScene Python Command Prompt

    代码如下:

    具体仓库地址:

    https://gitee.com/godxia/arcpy-encyclopedia

  • 相关阅读:
    湖南旅游市场游客满意度调查报告
    Spring Boot 整合 分布式搜索引擎 Elastic Search 实现 数据聚合
    14:00面试,14:06就出来了,问的问题有点变态。。。
    C++基础算法⑥——信奥一本通递归算法(全排列、分解因数、菲波那契数列、Pell数列、爬楼梯、汉诺塔问题)
    实验十 符号计算基础与符号微积分(matlab)
    IOS(刘海/留海/流海)屏幕判断
    C专家编程 第7章 对内存的思考 7.1 Intel 80x86系列
    相机突然断电,保存的DAT视频文件如何打开
    若依系统不分离版框架Mysql更换SqlServer
    Llama模型家族之RLAIF 基于 AI 反馈的强化学习(三) RLAIF 的工作原理
  • 原文地址:https://blog.csdn.net/allenlu2008/article/details/126271791