基于ArcGIS Pro自带的python安装第三方库,实现arcpy与第三方库的同时使用

本文介绍了如何在ArcGIS Pro环境下配置Python环境变量、安装pip并进而安装第三方库,使得arcpy能与第三方库如xarray协同工作,解决了ArcGIS Desktop与第三方库兼容性问题,提升了地学数据处理能力。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

基于ArcGIS Pro自带的python安装第三方库,实现arcpy与第三方库的同时使用

前言

此文受到ArcGIS自带的Python内安装第三方库的方法的帮助和启发。

在我们使用python处理地学数据(如矢量和栅格数据)时,经常会遇到一个棘手的问题:ArcGIS虽然拥有强大的专业地学数据处理库——arcpy,却难以与其他第三方库同时使用;同时,虽然部分第三方库(如xarray, netcdf4, gdal等)提供了部分地学数据处理的方法,但在易用性、简洁性和复杂度等方面都难以与arcgis媲美;此外,大部分第三方库已经停止了对python2.x的适配和更新,基于ArcGIS Desktop自带的python2.x难以满足复杂使用的需要。因此,我们在处理地学数据时经常需要在ArcGIS自带的python和我们自行安装的python之间切换使用,即使如此,有时也难以解决问题。因此,我们迫切需要有一个能够同时使用arcpy和其他第三方库的解决方案。

不同于ArcGIS Desktop自带的python2.x,ArcGIS Pro自带的python3.x可以满足大部分第三方库的使用需要,因此我们考虑基于ArcGIS Pro自带的python3.x安装第三方库,以解决上述问题。

前置条件

ArcGIS Pro :已经安装ArcGIS Pro。

第一步:配置环境变量

将ArcGIS Pro中Python的路径“D:\ArcGIS Pro 2.5\Pro\bin\Python\envs\arcgispro-py3”添加到Path系统环境变量中。

第二步:安装pip

pip是安装第三方库的必要条件,而ArcGIS Pro自带的python未安装pip,因此我们需要自行安装pip。

  1. control + R 打开cmd,切换到ArcGIS Pro自带的python的安装目录“D:\ArcGIS Pro 2.5\Pro\bin\Python\envs\arcgispro-py3”,目录需要根据自己的情况修改;
  2. 输入命令行"py -m pip install SomePackage",安装pip;
  3. 安装完成后,会提示升级pip,根据提示内容将引号内的语句复制下来运行,完成pip升级;

第三步:安装第三方库

  1. 安装后的pip在“D:\ArcGIS Pro 2.5\Pro\bin\Python\envs\arcgispro-py3\Scripts”路径下,因此安装第三方库时,需要在cmd中切换到该目录进行安装;
  2. 安装第三方库,例如pip install xarray,等待安装完成。以下是成功安装和导入xarray库的截图。
    在这里插入图片描述
    在这里插入图片描述
### 使用 PythonArcGIS Pro 进行地理空间数据分析 在 ArcGIS Pro 中利用 Python 可以高效地完成复杂的地理空间数据分析任务。通过集成的 ArcPy 库,能够编写自定义脚本来实现数据处理流程的自动化。 #### 安装配置环境 为了确保可以在 ArcGIS Pro 内部顺利运行 Python 脚本,需确认已安装最新版本的 ArcGIS Pro 并激活其内置的 Python 环境[^1]。该环境中预装了必要的包如 NumPy, Pandas 以及其他第三方库来辅助 GIS 数据的操作。 #### 创建并编辑 Python 脚本 启动 ArcGIS Pro 后,在 Catalog Pane 下找到 Toolboxes 文件夹内的 "Python" 子文件夹;右键点击空白处选择 New > Script 来创建一个新的 Python 脚本项目。此时可以开始编写代码逻辑,比如加载矢量图层、执行缓冲区分析或是批量转换坐标系等功能[^2]。 ```python import arcpy # 设置工作空间路径 arcpy.env.workspace = r"C:\path\to\your\data" # 获取当前地图文档对象 aprx = arcpy.mp.ArcGISProject("CURRENT") # 列出所有要素类名称 feature_classes = arcpy.ListFeatureClasses() print(f'Available feature classes are {", ".join(feature_classes)}') ``` 这段简单的例子展示了怎样设置工作目录,并列举指定位置下的所有要素类名。这有助于后续更深入的空间查询或统计计算准备基础材料。 #### 执行地理处理任务 借助于 ArcPy 提供的强大 API 接口,可以直接调用超过千种现成的地理处理工具来进行诸如叠加分析、距离测量等操作。下面的例子说明了如何运用 Buffer 工具为给定的道路网建立一定宽度范围的影响区域: ```python input_roads = 'roads.shp' output_buffered_road = 'buffered_roads.shp' try: # 对道路进行50米宽的缓冲区构建 arcpy.analysis.Buffer(input_roads, output_buffered_road, "50 Meters") except Exception as e: print(e.message) finally: aprx.save() # 保存更改后的工程文件 ``` 上述代码片段实现了基于特定参数设定下对选定线状实体实施缓冲区运算的过程,最终成果将以新的 shapefile 形式存储下来以便进一步可视化展示或者其他专题信息关联起来做综合评价研究[^3]。 #### 自动化重复性作业 对于那些频繁发生却耗时费力的手工步骤来说,完全可以依靠编程手段将其转化为自动化的解决方案。例如定期更新某地区的土地覆盖分类结果,只需一次精心设计好算法模型之后就能周期性的触发相应程序段落去抓取最新的遥感影像资料进而得出最及时有效的监测报告。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值