前情提要

     最近在上看到一些基于geopandas的地图制作方法,使用了geopandas,可是这个包和gdal一样难装,装好之后还出现好几个问题,留下这篇帖子给自己还有需要的小伙伴看看。

    首先我之前

环境

我在安装geopandas中签,已经用过一段时间的gdal和rasterio,这次想用geopandas却不太能很好的安装。

我之前安装的环境是

anaconda-3

python 3.8

gdal-3.1.4

geopandas需要的环境还有 shapely、Fiona

整体的逻辑是gdal+Fiona+shapely->geopandas

其中Fiona还依赖gdal,所以安装好这三个包,geopandas就很轻松了。

我安装的时候,https://www.lfd.uci.edu/~gohlke/pythonlibs/

https://www.lfd.uci.edu/~gohlke/pythonlibs/已经不提供gdal-3.1.4的Python3.7以上包了,所以非常的烦,我只能使用gdal-3.3.3。

最终安装后的版本如下

conda grep命令安装 conda安装geopandas_python

conda grep命令安装 conda安装geopandas_gis_02

 

conda grep命令安装 conda安装geopandas_conda grep命令安装_03

conda grep命令安装 conda安装geopandas_anaconda_04

 安装方法1

 conda直接安装

开始菜单里找到anaconda文件夹里的 Anaconda Prompt (Anaconda3)

输入如下命令

conda install geopandas

     等待一段时间后会出现如下界面,conda会自动帮你补全需要的包,选择y就好。(这里我之前安装过gdal了,所以可能会有点不同)。

conda grep命令安装 conda安装geopandas_conda grep命令安装_05

 这样会直接安装好geopandas,不过版本是0.6.1,其他三个依赖的包版本也列在下面。

conda grep命令安装 conda安装geopandas_anaconda_06

conda grep命令安装 conda安装geopandas_anaconda_07

conda grep命令安装 conda安装geopandas_conda grep命令安装_08

这样是可以直接用的,如果这个版本已经可以满足你的需求,那么到这里本文就结束了。

但是如果你已经安装了gdal更高的版本,或者是需要geopandas更新的版本的话,你需要用到安装方法2。

安装方法2

     下载离线whl文件,使用本地安装,首先进入Pythonlibs
https://www.lfd.uci.edu/~gohlke/pythonlibs/

https://www.lfd.uci.edu/~gohlke/pythonlibs/寻找gdal、shapely、Fiona、geopandas四个包

conda grep命令安装 conda安装geopandas_gis_09

conda grep命令安装 conda安装geopandas_anaconda_10

conda grep命令安装 conda安装geopandas_conda grep命令安装_11

conda grep命令安装 conda安装geopandas_pandas_12

我都选择的当前最新版本:

gdal-3.3.3

Fiona-1.8.20

shapely-1.8.0

geopandas-0.10.2

 这里根据自己的Python版本来下载就好

conda grep命令安装 conda安装geopandas_conda grep命令安装_13

 之后就很简单了,开始菜单里找到anaconda文件夹里的 Anaconda Prompt (Anaconda3),找到自己下载whl的文件夹,切换盘直接输入E:就可以,打开文件夹用cd。

conda grep命令安装 conda安装geopandas_anaconda_14

 进入目录后,复制文件名,使用下面的代码,输入自己的文件名就好,可以用conda的本地安装方法,但我觉得pip简单一点哈哈。按照GDAL、Fiona、Shapely、geopandas的顺序来就没问题。

pip install GDAL-3.3.3-cp38-cp38-win_amd64.whl
pip install Fiona-1.8.20-cp38-cp38-win_amd64.whl
pip install Shapely-1.8.0-cp38-cp38-win_amd64.whl
pip install geopandas-0.10.2-py2.py3-none-any.whl

 到这里,就成功安装了geopandas-0.10.2,回到了文章最开始的结果图。

安装过程遇到的问题

问题1

安装过程还是遇到很多问题,比如四个包的文件对应问题,我一开始是想选一个中间版本的,但是四个包的对应还挺麻烦的,我就干脆都选择了最新版本,但是我第一次安装好后,打开prompt,conda提示我下面的问题:

系统找不到指定的路径。

E:\IDM>set "GDAL_DRIVER_PATH="

这个问题我没有解决,后来我重装了全部四个包,这个问题才解决,我猜测是环境路径的问题,因为我在个人环境路径里找到这个环境。如果你遇到了类似的问题,可以试着设置一下这个用户变量

conda grep命令安装 conda安装geopandas_gis_15

 在用户路径中选择添加,然后填上,变量值记得设置到自己的路径里。

conda grep命令安装 conda安装geopandas_conda grep命令安装_16

 问题2

ERROR 1: PROJ: proj_create_from_database: Cannot find proj.db

 这是我在跑代码的时候遇到的,是gdal的一个问题,我试着装回2.x的老版本,是没有这个问题的,我还是觉得是环境路径的问题,但是我在个人环境路径里是有这个内容的,文件夹下面也有proj.db的文件。

conda grep命令安装 conda安装geopandas_pandas_17

  

 

conda grep命令安装 conda安装geopandas_anaconda_18

这个问题我就没有解决了。