参考原文:
作者:xushiluo
原文链接:https://www.jianshu.com/p/f3d58072c85d
1.问题描述
ArcGIS Desktop本身集成的Python2安装第三方包的时候比较麻烦,虽然网上有很多方法,但借助Anaconda安装是一个相对比较方便的做法。
2.软件环境
- ArcGIS Desktop 10.2.2
- Anaconda 3
以上是我的软件版本,ArcGIS Desktop和Anaconda都可以从网上下载到,安装ArcGIS Desktop和Anaconda的步骤此处省略。
3.操作步骤
3.1 添加国内安装源
Anaconda安装第三方包时,默认的源服务器在国外,下载速度很慢。因此,我们首先添加国内的源:例如,清华大学的conda源。
- 【开始】->【Anaconda】->【Anaconda Prompt】->右键以管理员身份打开
- 命令行中输入以下代码
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --set show_channel_urls yes
3.2 ArcGIS与Anaconda的集成
(1)确定ArcGIS自带的python版本
- 打开ArcGIS自带的IDLE,输入以下代码
import sys, numpy, matplotlib
print(sys.version, numpy.__version__, matplotlib.__version__)
可以看到ArcGIS自带的python,numpy和matplotlib的版本
('2.7.5 (default, May 15 2013, 22:43:36) [MSC v.1500 32 bit (Intel)]', '1.7.1', '1.3.0')
(2)在Anaconda中创建虚拟Python2环境
先将Anaconda的环境置为32bit (ArcGIS Desktop默认使用32位的Python),然后再创建环境。
- 【Anaconda Prompt】->右键以管理员身份打开->输入以下命令行,创建目录并安装常用包:
set CONDA_FORCE_32BIT=1
conda create -n arc1022 python=2.7.5 numpy=1.7.1 matplotlib=1.3.0
这样就创建好了名为arc1022的python环境,接下来可以激活该环境来安装我们需要的包
- 激活环境
conda activate arc1022
- 安装我们需要的包
conda install pandas
(3)将Anaconda中的Python2环境与ArcGIS关联
即让ArcGIS自带的Python知道本机的哪个目录里还有合适第三方包。
Anaconda创建的目录在:
\Anaconda3\envs\arc1022\Lib\site-packages
ArcGIS自带python第三方包的存放目录在:
\Python27\ArcGIS10.2\Lib\site-packages
- 我们只需在ArcGIS自带python第三方包的存放目录下建立一个后缀名为pth的文件将两者关联:例如findArc1022inAnaconda.pth 该文件需要一行文本,即Anaconda创建的目录,例如
d:\Anaconda3\envs\arc1022\Lib\site-packages
这样,ArcGIS自带的python就知道到arc1022环境所在的目录下去找第三方包了。
(4)测试一下是否成功
- 打开ArcGIS自带的IDLE,输入以下代码
import pandas
print(pandas.__version__)
如果两行代码都不报错,证明我们的方法成功了。