安装#

GeoPandas的空间功能依赖于开放源码的大型地理空间库堆栈 (GEOS, GDALPROJ )。请参阅 依赖项 下面的部分了解更多详细信息。这些基本的C库有时对安装来说可能是一个挑战。因此,我们建议您严格遵循以下建议,以避免安装问题。

使用Anaconda/Conda安装#

要安装GeoPandas及其所有依赖项,我们建议使用 conda package manager. This can be obtained by installing the Anaconda Distribution (a free Python distribution for data science), or through miniconda (minimal distribution only containing Python and the conda package manager). See also the installation docs 有关如何在本地安装Anaconda或Minconda的更多信息。

使用的优势是 conda 包管理器的特点是它为所有平台(Windows、Mac、Linux)的GeoPandas的所有必需和可选依赖项提供了预先构建的二进制文件。

要安装最新版本的GeoPandas,您可以执行以下操作:

conda install geopandas

使用Conda-Forge通道#

conda-forge 是一项社区工作,为各种软件提供Conda包。它提供了 conda-forge Conda的程序包通道,可以从该通道安装程序包,此外,“ 默认值 “由Anaconda提供的频道。根据您正在使用的其他包, 默认值 渠道或 conda-forge 渠道可能更适合您的需求(例如,某些套餐在 conda-forge 而不是开着 默认值 )。

GeoPandas及其所有依赖项可在 conda-forge 频道,并可安装为::

conda install --channel conda-forge geopandas

备注

我们强烈建议您从 默认值 频道,或来自 conda-forge 频道。由于GeoPandas的依赖关系,来自两个渠道的包混合在一起,可能会导致导入问题。请参阅 conda-forge section on using multiple channels 了解更多详细信息。

创造一个新环境#

创建新环境并不是绝对必要的,但考虑到安装来自不同渠道的其他地理空间包可能会导致依赖关系冲突(如上所述),在干净的环境中从头开始安装地理空间堆栈可能是一种良好的做法。

以下命令将创建一个名为 geo_env ,将其配置为始终从Conda-Forge安装包,并在其中安装GeoPandas::

conda create -n geo_env
conda activate geo_env
conda config --env --add channels conda-forge
conda config --env --set channel_priority strict
conda install python=3 geopandas

使用管道安装#

GeoPandas也可以与pip一起安装,如果所有依赖项也可以安装的话:

pip install geopandas

警告

使用pip安装GeoPandas时,需要确保正确安装了所有依赖项。

  • fiona 提供带有Mac和Linux的依存关系的二进制控制盘,但不包括Windows的依存关系。

  • pyproj, rtree, and shapely 为Mac、Linux和Windows提供带有依赖项的双轮。

  • 用于的窗口滚轮 shapely, fiona, pyproj and rtree can be found at Christopher Gohlke's website

根据您的平台,您可能需要手动编译和安装它们的C依赖项。有关安装这些包的更多详细信息,请参阅各个包。使用Conda(见上)避免了自己编译依赖项的需要。

从源安装#

您可以通过克隆 GitHub 存储库并使用pip从本地目录安装::

git clone https://github.com/geopandas/geopandas.git
cd geopandas
pip install .

还可以使用以下命令直接从GitHub存储库安装最新的开发版本:

pip install git+git://github.com/geopandas/geopandas.git

对于从源安装GeoPandas,相同 note 需要正确安装所有依赖项时才适用。但是,在从源代码::安装GeoPandas之前,这些依赖项也可以与Conda一起独立安装

conda install pandas fiona shapely pyproj rtree

请参阅 section on conda 以上是关于与 Python 一起跑步的更多细节。

依赖项#

必需的依赖项:

此外,可选依赖项包括:

  • rtree (可选;空间索引以提高性能,是覆盖操作所必需的;接口到 libspatialindex )

  • psycopg2 (可选;用于PostGIS连接)

  • GeoAlchemy2 (可选;用于写入PostGIS)

  • geopy (可选;用于地理编码)

对于绘图,可以使用以下附加包:

使用可选的PyGEOS依赖项#

改进GeoPandas性能的工作正在进行中。目前,基本空间运算的快速实现驻留在 PyGEOS 包(但工作正在进行中,以贡献这些改进的Shapely)。从GeoPandas 0.8开始,可以通过安装PyGEOS来选择性地使用这些试验性加速。这可以使用conda(使用conda-forge通道)或pip::

# conda
conda install pygeos --channel conda-forge
# pip
pip install pygeos

更具体地说,是否使用加速取决于:

  • 如果安装了PyGEOS>=0.8,将默认使用它(但安装GeoPandas还不会自动将PyGEOS安装为依赖项,您需要手动安装)。

  • 当可用时,您仍然可以通过以下方式切换PyGEOS的使用:

    • 设置环境变量 (USE_PYGEOS=0/1 )。注意:只有在第一次导入GeoPandas时才会选中此变量。

    • 设置选项: geopandas.options.use_pygeos = True/False 。请注意,虽然此变量可在交互会话期间设置,但仅当创建了您使用的GeoDataFrame时才起作用(例如,使用读取文件 read_file )更改此值之后。

警告

使用PyGEOS是试验性的!尽管它通过了所有测试,但可能仍然存在问题,并且并非GeoPandas的所有功能都将从加速中受益(一个已知问题: to_crs 坐标变换会丢失z坐标)。但是,我们非常欢迎您尝试这种方式!您遇到的任何问题(以及成功使用的报告都很有趣!)可在https://gitter.im/geopandas/geopandas或https://github.com/geopandas/geopandas/issues上报告