Python空间数据计算:2.GeoPandas的几种安装方式

2024-02-26 23:52

本文主要是介绍Python空间数据计算:2.GeoPandas的几种安装方式,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

前言:

本文多图

如果不想挑战自己的计算机设置能力,请看最后的方法即可

推荐收藏。

上次秀了一把GeoPandas包之后,后台最多的留言就是:这个破包也太难安装了……各种装不上。好吧,我承认,GeoPandas是Python里面比较难安装的包之一。

 

fca45155c28641238e64bb5f11c2f66c.png

 今天老王就来给大家说说,怎么在裸机的情况下,安装这个包:

PS:我这里说的仅限于Windows系统,如果你是MacOS,或者Linux,有其他的方法。

预先预告:一共有三种方法,从复杂到简单,如果你喜欢折腾,可以选择最复杂的第一种。

 

1、裸机Python环境下安装geopandas。

19d9faf68fad4de68d248967ef799426.png

 先安装一个裸奔版本的Python3.8(3.7也行,但是别太低了,也最好别尝试最新版本,因为最新往往代表还有多包无法更新到支持)。

9570e1de9e5643afa917fb6e93352945.png

 恩,我这里弄的是一个win7的虚拟机……如果是win10就更简单了……

47fde92be1ef445591463eb50da31867.png

 首先安装这个裸奔版本的Python:

1a87a5987ba0450396564dff91ead707.png

 一般我习惯于用自定义,如果省事的话,可以选择加到PATH里面去,如上所示。

实际上在Python3 x比较高的版本里面,也不算全裸奔了……起码pip是有的,这样就方便很多了:(要自己装pip,才叫全裸……)

1a456588319748afb178c2f116218e8c.png

 其他的可以选择默认,一般我的习惯是换个比较好找的路径:

1900e61da8a847d78edd16076cb4ca0f.png

           点击安装,等待结束就好了

323556c0e32a4712b1616cd336008e90.png

 安装完之后,打开cmd,看看目前有啥:

3b86d0e36acb44bea04d08ff7c072684.png

 如果你和我一样,把Python已经加入了PATH里面的话,直接输入Python就可以进入Python环境了

df41ac0945ce44a2981739fcfc556ffd.png

 然后看看我们的Python里面,目前就是默认的两个包:

a5848d7416d14c528142e9d1a57af894.png

 下面开始进入我们安装geopandas的过程:

geopandas是无法直接通过pip安装的,会各种报错,我在这里直接说正确的安装方式。

 

首先看看geopandas的需求,在pypi网站里面输入geopandas:

在我写这篇文章的时候,最新版本的是0.8.2

3c083ba368da443b86bad0d9381e46b3.png

 进去之后,发现他需要两个前置包,分别是pandas和shapely。

6efe9dd09a5743b1aa3c8faafea6eb08.png

             pandas好解决,直接pip搞定:

3db53f55a433441f8c7236ba3a176728.png

 命令如下:

python -m pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pandas

 

注意,-i 表示本次安装使用自定义的镜像,这里我们选择清华的源

 

可以看见,安装pandas,需要有numpy、six、python-dateutil、pytz四个包,pip自动搞定,而且用清华的源,速度还是想当给力的。

cbe36ced2a954365a6a0639c0a7e35b3.png

          下面直接通过pip 安装shapely:

beabfee741ec4254abcd8b6ad1f58e96.png

 也很快就能安装好,但是接下去,如果你直接pip geopandas的话,就会出现这个问题:

37a33f5a78964d24921e3c8f5a387220.png

 在安装的时候,会直接报出这个错误:

f5e6e78eb4764d8e8049679b0b47c888.png

 我把文本都贴出来,为了以后方便查询(图片内容无法进行查询)  

ERROR: Command errored out with exit status 1:

     command: 'C:\Python3\python.exe' -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'C:\\Users\\Administrator\\AppData\\Local\\Temp\\pip-install-9sy_118g\\fiona\\setup.py'"'"'; __file__='"'"'C:\\Users\\Administrator\\AppData\\Local\\Temp\\pip-install-9sy_118g\\fiona\\setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' egg_info --egg-base 'C:\Users\Administrator\AppData\Local\Temp\pip-pip-egg-info-6f2_bd38'

         cwd: C:\Users\Administrator\AppData\Local\Temp\pip-install-9sy_118g\fiona\

    Complete output (1 lines):

    A GDAL API version must be specified. Provide a path to gdal-config using a GDAL_CONFIG environment variable or use a GDAL_VERSION environment variable.

    ----------------------------------------

ERROR: Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.

重点看最后的错误提示:GDAL

这里就很清楚了,geopandas需要使用fiona包,但是fiona包又需要gdal……

这就是裸体安装的问题了,我们必须手动在系统里面安装GDAL。

(这个东西还是C++写的,你要网上一搜,基本上都是教你去自己编译……当然,要是会编译GDAL的同学,也不用来看这篇文章了)

如果你直接打开gdal的官网,发现他提供的gdal的源码……

5b4a17f958d0492baad545a9b4c838d1.png

 我特么要源码干嘛?我只想要一个编译好的,能用的啊有没有!

c1f95e105c514f669e42fc7b985d3d32.png

 所以,我们直接去找一个可以用的gdal,

推荐一个超级强大的网站

https://www.lfd.uci.edu/~gohlke/pythonlibs/

e56bc9e4bc894e3a9a5d303d4187e7a9.png

 这是加州尔湾大学提供的一个编译好的Python包的网站,搞Python的超级宝库。

直接去下载我们需要的,编译好的GDAL包

c76e6f0a4e7f4a4993d2b70f3e290f7e.png

 注意!注意!注意!

不要下载安装最新的3.2.1包,因为Fiona目前不支持这个版本的GDAL!(截止到2021年1月29日,fiona1.8.18版本,最高只能支持到3.1.4版本的GDAL包)

所以我们这里一定要下载3.1.4版本的GDAL包!

(我发这篇文章的时候,已经不提供3.1.4的包了……这是一个很悲伤的故事,需要的同学,可以通过邮件和我联系。不过你如果是3.7,我这里就只能提供3.1.3版本的包,恩,用法是一样的。)

下载之后,直接用pip进行离线安装就行:

6ae03ba1b10745b1b951c00b549ac30f.png

 完美!

然后我们就可以去安装fiona了……注意,不能用pip,因为pip会的是fiona的源码,需要通过VC++来编译,所以我们还是去下一个编译好的fiona包:

然后我们直接在这里下载你需要的指定版本的fiona包:我们是Python3.8下面的64位包:

6d2a02ed4cd94554a3fc8ca366a4be70.png

 然后直接用pip命令进行离线安装即可:

b49a0f4208884dbda68007c096464be9.png

 完美!

下面,就可以继续用pip安装geopandas了

7044ae7a2aab487a9197569b2257fa63.png

 测试一下:

b0838b9ae69440a393ce1ff8cd48371d.png

 打完收工……

上面这种方法,特别麻烦,下面介绍几种比较简单方法:

baf4e9f23f0347c4a833a772be1450ea.jpg

 安装anaconda:

556b944ad784418eb82dc5064a837a02.png

 安装完成之后,启动anaconda的环境变量:

d48f62a411a5442fb1b454cdb845cd48.png

然后直接输入conda install geopandas

eb5622c85e154fbd9b8909b0665df01a.png

 conda会告诉你,需要安装和更新哪些包:

2b48e2dbf31e4ce8b710f615c27532ad.png

 输入一个y之后,然后等待系统自动下载,安装完成,就可以用了……

问题在于conda上面的geopandas版本比较老,是0.6.1的,如果你想用比较新的版本,需要用conda-forge仓库,如下:

conda install -c conda-forge geopandas

(缺点是conda-forge的速度让人发指……)

测试结果如下:(中文显示乱码是anaconda的环境设置的问题,不影响最后使用)

9cc30f5bd98e4054b6eab97ecfce6a56.png

 你可以在anaconda下面,用pip去安装最新的geopandas,和在裸奔Python下安装是一样的。

第三种方法:

直接安装ArcGIS(GeoScene) Pro ,然后打开Python,就直接可以用了:

f63d57ece16342099c1c70bc96f4f0b3.png

 我这里提供的警告,是说我安装了很高版本的PyGEOS,导致版本冲突,不影响使用……

第四种方法:安装QGIS:

安装完了之后,用QGIS自带的Python,就可以直接使用geopandas了:

2c830b8885c24c1a8d52c6bd996f7198.png

 以上是使用geopandas的四种方法……各有各的好处,也各有各的麻烦和缺点……

请大家按需取用。

打完收工。

真的收工了,没了!

19c7eca0031340a7842e7cb3abab760b.jpg

 

 

这篇关于Python空间数据计算:2.GeoPandas的几种安装方式的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/750566

相关文章

MySQL9.0默认路径安装下重置root密码

《MySQL9.0默认路径安装下重置root密码》本文主要介绍了MySQL9.0默认路径安装下重置root密码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们... 目录问题描述环境描述解决方法正常模式下修改密码报错原因问题描述mysqlChina编程采用默认安装路径,

Python爬虫selenium验证之中文识别点选+图片验证码案例(最新推荐)

《Python爬虫selenium验证之中文识别点选+图片验证码案例(最新推荐)》本文介绍了如何使用Python和Selenium结合ddddocr库实现图片验证码的识别和点击功能,感兴趣的朋友一起看... 目录1.获取图片2.目标识别3.背景坐标识别3.1 ddddocr3.2 打码平台4.坐标点击5.图

Python自动化Office文档处理全攻略

《Python自动化Office文档处理全攻略》在日常办公中,处理Word、Excel和PDF等Office文档是再常见不过的任务,手动操作这些文档不仅耗时耗力,还容易出错,幸运的是,Python提供... 目录一、自动化处理Word文档1. 安装python-docx库2. 读取Word文档内容3. 修改

Python重命名文件并移动到对应文件夹

《Python重命名文件并移动到对应文件夹》在日常的文件管理和处理过程中,我们可能会遇到需要将文件整理到不同文件夹中的需求,下面我们就来看看如何使用Python实现重命名文件并移动到对应文件夹吧... 目录检查并删除空文件夹1. 基本需求2. 实现代码解析3. 代码解释4. 代码执行结果5. 总结方法补充在

将java程序打包成可执行文件的实现方式

《将java程序打包成可执行文件的实现方式》本文介绍了将Java程序打包成可执行文件的三种方法:手动打包(将编译后的代码及JRE运行环境一起打包),使用第三方打包工具(如Launch4j)和JDK自带... 目录1.问题提出2.如何将Java程序打包成可执行文件2.1将编译后的代码及jre运行环境一起打包2

Python自动化办公之合并多个Excel

《Python自动化办公之合并多个Excel》在日常的办公自动化工作中,尤其是处理大量数据时,合并多个Excel表格是一个常见且繁琐的任务,下面小编就来为大家介绍一下如何使用Python轻松实现合... 目录为什么选择 python 自动化目标使用 Python 合并多个 Excel 文件安装所需库示例代码

C++一个数组赋值给另一个数组方式

《C++一个数组赋值给另一个数组方式》文章介绍了三种在C++中将一个数组赋值给另一个数组的方法:使用循环逐个元素赋值、使用标准库函数std::copy或std::memcpy以及使用标准库容器,每种方... 目录C++一个数组赋值给另一个数组循环遍历赋值使用标准库中的函数 std::copy 或 std::

Python使用Pandas对比两列数据取最大值的五种方法

《Python使用Pandas对比两列数据取最大值的五种方法》本文主要介绍使用Pandas对比两列数据取最大值的五种方法,包括使用max方法、apply方法结合lambda函数、函数、clip方法、w... 目录引言一、使用max方法二、使用apply方法结合lambda函数三、使用np.maximum函数

spring-boot-starter-thymeleaf加载外部html文件方式

《spring-boot-starter-thymeleaf加载外部html文件方式》本文介绍了在SpringMVC中使用Thymeleaf模板引擎加载外部HTML文件的方法,以及在SpringBoo... 目录1.Thymeleaf介绍2.springboot使用thymeleaf2.1.引入spring

Python调用Orator ORM进行数据库操作

《Python调用OratorORM进行数据库操作》OratorORM是一个功能丰富且灵活的PythonORM库,旨在简化数据库操作,它支持多种数据库并提供了简洁且直观的API,下面我们就... 目录Orator ORM 主要特点安装使用示例总结Orator ORM 是一个功能丰富且灵活的 python O