前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >一、Arcpy介绍和安装【ArcGIS Python系列】

一、Arcpy介绍和安装【ArcGIS Python系列】

作者头像
renhai
发布2023-11-24 16:18:30
5450
发布2023-11-24 16:18:30
举报

本文首次发布在我的博客(https://cdn.renhai-lab.tech/archives/4.2.1-Arcpy%E4%BB%8B%E7%BB%8D%E5%92%8C%E5%AE%89%E8%A3%85)。微信公众号无法嵌入超链接,推荐去博客阅读。

一句话说明ArcPy是什么:ArcPy是一个 Python 站点包,可提供以实用高效的方式通过 Python 执行地理数据分析、数据转换、数据管理和地图自动化。可以通过ArcPy调用ArcGIS Pro中几乎所有的工具,将其与其他Python工具结合使用,形成自己的工作流程。

Python脚本在ArcGIS Pro中的应用可实现自动执行复杂的任务,避免繁琐的软件操作界面。举例来说,假设你需要收集不同渠道的shpfile,然后要检查和匹配所有shp的坐标系,如果是在软件中那么你一定会崩溃。利用Arcpy我们可以编写一个 Python 脚本以检查多个数据集的坐标系,然后都转为指定的坐标系。

一、ArcPy的环境配置

ArcPy 包是默认 Python 存在于ArcGIS Pro环境中的,而且需要搭配软件使用。所以安装好ArcGIS Pro就完成了第一步。

1、ArcGIS Pro的安装

对于新手,可以选择方式一试用。

  • 方式一:官方试用21天
  • 方式二:参考ArcGIS Pro 3.0 完整安装教程,安装包下载可以去本教材的阿里网盘获取。

2、ArcPy环境管理

ArcPy采用conda管理环境,可以自定义环境,添加或删除库,但是不能修改默认的arcgispro-py3环境,因为自定义环境会使其在某些情况下不可用,会导致ArcGIS Pro 应用程序(使用 arcgispro-py3 环境)中的功能也可能处于错误状态。可能需要完全卸载并重新安装 ArcGIS Pro。

我们需要克隆环境然后进行环境管理,但是使用官方教程通过程序内置包管理器克隆环境时会出错,原因不明,亲测不是因为网络问题。

自定义环境中添加和删除包非常容易导致环境出错,建议不要大量修改环境中的库。

(1)快速克隆环境
方法一:使用conda进行环境克隆

适合国内环境,配置conda镜像之后,通过程序自带的conda包管理器进行克隆,同样支持使用Pycharm:

  1. 找到arcgis pro环境的conda镜像源文件.condarc,文件一般在:"C:\Program Files\ArcGIS\Pro\bin\Python.condarc"。
  2. 右键.condarc修改文件的权限,保证登录的用户可以修改。如图勾选“Users”的修改权限。
  1. 修改文件,将以下文本覆盖粘贴进此文件:
代码语言:javascript
复制
channels:
  - esri
  - defaults
show_channel_urls: true
default_channels:
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2
custom_channels:
  conda-forge: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  msys2: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  bioconda: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  menpo: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  pytorch: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  pytorch-lts: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  simpleitk: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  deepmodeling: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/
  1. 找到"C:\Program Files\ArcGIS\Pro\bin\Python\Scripts\proenv.bat"并运行以激活环境:

image-20230823160526441

  1. 运行清除conda包索引的命令:conda clean -i ,提示输入y
  2. **管理员运行**Arcgis Pro程序,进入包管理器,点击克隆环境,指向你自己安装的conda环境文件夹或者其他文件。

image-20230823160753831

  1. **管理员运行**Pycharm或其他编辑器,添加解释器-使用现有conda环境-选择刚刚克隆的环境。
方法二:直接复制环境文件夹

下面说明如何快速克隆环境,简单来说就是直接复制arcgispro-py3文件夹:

  1. 找一个你认为合适的存放克隆文件夹的位置,我在此处将文件夹放在了conda环境文件夹下"C:\Users\用户名\conda\envs\arcgispro-py3-clone"
  2. 进入到Pro默认安装文件下,拷贝文件arcgispro - py3到上述地址中,改名,此处改名为arcgispro-py3-clone。
  3. 在Pro "管理环境"--"添加", 然后指向到第二步中的文件夹。
  4. 点击确定即可。
(2)手动安装环境

从 ArcGIS Pro 2.7 开始,当 ArcPy 包版本不冲突时,可将其添加到现有 Python 3 环境中。要添加 ArcPy,请使用 conda 从 Anaconda Cloud 上的 Esri 频道安装 ArcPy。从 Python 命令提示符中,使用适当的版本号运行以下命令:

代码语言:javascript
复制
conda install arcpy=3.0 -c esri

具体留在如何配置机器学习的arcpy环境中一起说明。

测试ArcPy安装情况

我们可以直接打开ArcGIS Pro 中的Jupyter Notebook,

要创建笔记本,请单击功能区上的插入选项卡,然后单击新建笔记本按钮 。或者,可以打开目录窗格,浏览至工程目录,右键单击文件夹,然后选择**新建 > 笔记本**。 已添加到工程中的 ArcGIS Notebooks 将在目录窗格的 Notebooks 文件夹 下列出。使用 ArcGIS Pro 创建的 Notebook 会自动添加到您的工程中。要将现有的笔记本添加到工程中,请右键单击 Notebooks 文件夹,然后选择添加笔记本 ,或者单击插入功能区上添加笔记本按钮旁边的下拉箭头,然后选择添加笔记本。 要在工程中打开现有笔记本,请浏览到目录窗格中的笔记本文件,然后双击笔记本,或者右键单击笔记本并选择打开笔记本

我们输入一下代码导入arcpy,无报错则配置成功:

代码语言:javascript
复制
# 方式一导入随 ArcGIS 安装的标准工具箱中的所有地理处理工具
import arcpy
# 导入某个模块
import arcpy.mp

在很多情况下,用户可能不想使用整个模块或无需使用整个模块。如果只导入某一模块的一部分,可以使用 from-import 语句。在下例中,将导入 env 类(env 类包含所有地理处理环境)。现在无需以 arcpy.env 的形式访问环境,而可以将其简化为 env。

代码语言:javascript
复制
from arcpy import env
env.workspace = 'c:/data' 
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2023-08-30,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 renhailab 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、ArcPy的环境配置
    • 1、ArcGIS Pro的安装
      • 2、ArcPy环境管理
        • (1)快速克隆环境
        • (2)手动安装环境
        • 测试ArcPy安装情况
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档