安装#
GeoPandas的空间功能依赖于一个大型的地理空间开源库栈(GEOS,GDAL,PROJ)。有关更多细节,请参见下面的依赖项部分。这些基础C库有时可能会安装困难。因此,我们建议您仔细遵循以下建议,以避免安装问题。
使用 Anaconda / conda 安装#
要安装GeoPandas及其所有依赖项,我们建议使用conda包管理器。这可以通过安装Anaconda Distribution(用于数据科学的免费Python发行版)或通过miniconda(仅包含Python和conda包管理器的最小发行版)来获得。有关如何在本地安装Anaconda或miniconda的更多信息,请参见Conda安装文档。
使用conda包管理器的优点是它为所有平台(Windows、Mac、Linux)提供了GeoPandas所需和可选依赖项的预构建二进制文件。
要安装最新版本的GeoPandas,您可以执行:
conda install geopandas
使用 conda-forge 渠道#
conda-forge 是一个社区努力,为各种软件提供conda软件包。它为conda提供了conda-forge软件包通道,从中可以安装软件包,此外还有Anaconda提供的“defaults”通道。根据您正在使用的其他软件包,defaults通道或conda-forge通道可能更适合您的需求(例如,一些软件包在conda-forge上可用,而在defaults上不可用)。一般而言,conda-forge在地理空间python软件包的最新版本上更新得更及时。
GeoPandas及其所有依赖项可在conda-forge频道上获得,并且可以通过以下方式安装:
conda install --channel conda-forge geopandas
注意
我们强烈建议从defaults频道或conda-forge频道安装所有内容。将来自两个频道的包混合使用作为GeoPandas的依赖项可能会导致导入问题。有关更多详细信息,请参阅使用多个频道的conda-forge部分。
创建新环境#
创建一个新的环境并不是严格必要的,但鉴于从不同渠道安装其他地理空间包可能会导致依赖冲突(如上面的说明中提到的),在一个干净的环境中重新开始安装地理空间堆栈是一个良好的做法。
以下命令创建一个名为 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
使用pip安装#
GeoPandas 也可以通过 pip 安装,如果所有依赖项也可以安装:
pip install geopandas
警告
使用pip安装GeoPandas时,您需要确保所有依赖项都正确安装。
我们的主要依赖项(shapely,pyproj,pyogrio)为Mac、Linux和Windows提供了包含依赖项的二进制轮子。
然而,根据你的平台或Python版本,可能没有可用的预编译轮子,你需要手动编译和安装它们的C依赖项。我们参考各个软件包以获取有关安装这些依赖项的更多详细信息。使用conda(见上文)可以避免自己编译依赖项。
可选的运行时依赖项也可以一次性安装:
pip install 'geopandas[all]'
从源代码安装#
您可以通过克隆GitHub 仓库并使用pip从本地目录安装最新的开发版本:
git clone https://github.com/geopandas/geopandas.git
cd geopandas
pip install .
开发依赖可以使用开发可选依赖组进行安装:
pip install '.[dev]'
也可以直接从GitHub库安装最新的开发版本,方法是:
pip install git+git://github.com/geopandas/geopandas.git
要从源代码安装GeoPandas,仍然需要确保所有依赖项正确安装的同样说明适用。但是,这些依赖项也可以在从源代码安装GeoPandas之前通过conda独立安装:
conda install pandas pyogrio shapely pyproj
有关使用Anaconda的详细信息,请参见上述conda部分。
依赖项#
所需依赖:
pandas(版本 1.4 或更高)
此外,可选依赖项包括:
fiona (可选;比 pyogrio 慢的替代方案)
psycopg(可选;用于PostGIS连接)
psycopg2 (可选;用于PostGIS连接 - 较旧版本的psycopg库)
GeoAlchemy2 (可选;用于写入PostGIS)
geopy(可选;用于地理编码)
pointpats (可选;用于高级点采样)
scipy(可选;用于空间索引的稀疏输出)
对于绘图,可以使用以下附加包:
matplotlib (≥ 3.5.0)
mapclassify (>= 2.4.0)
folium (用于交互式绘图)