在 Python 中导入模块 (mpl_toolkits.basemap) 时出现问题

在 Python 中导入模块 (mpl_toolkits.basemap) 时出现问题

问题是这样的:我正在尝试学习如何使用 Python 绘制地图,使用 Shapefile。互联网上有很多示例,但几乎所有示例都以类似以下内容开头:

from mpl_toolkits.basemap import Basemap

当我尝试将其输入到 IPython 笔记本中时,Python 控制台或 Pycharm 将返回

ImportError: No module named 'mpl_toolkits.basemap'

对此的下一个响应是,好的,是时候了sudo apt-get install python-mpltoolkits.basemap。运行并返回:

Reading package lists... Done
Building dependency tree       
Reading state information... Done
python-mpltoolkits.basemap is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 12 not upgraded.

我尝试sudo apt-get remove python-mpltoolkits.basemap使用 apt-get 重新安装,但没有成功。

我怎样才能让系统识别该模块的存在,或者以 Python 解释器可识别的方式重新安装它?

答案1

本文介绍了如何安装 Basemap。并且这里是 git 仓库,并且这是一个浏览器可下载的源代码

从文章中,简而言之:
1)如果 apt-get install 不起作用,请下载源代码
2)通过以下方式安装源代码(如果安装到虚拟环境,则非常有用):

cd basemap-1.x.x
python setup.py install

然后这里也是文档,其中包含安装指南以及如何测试是否安装正确。(只需from mpl_toolkits.basemap import Basemap在终端中运行)。

值得注意的是,如果您在检测 libgeos 时遇到问题,文档建议您首先单独安装包含的 libgeos 源(3.3.3)。

答案2

如果你使用 Anaconda,它有一个用于底图的包:

conda install basemap

(看起来 pip 不再有这个包了。)

答案3

就我而言,以下命令有效

sudo apt install python3-mpltoolkits.basemap

答案4

首先更新你的 conda

$ conda update conda

检查你的 Python 版本

$ conda search "^python$"

为你的项目创建一个虚拟环境

$ conda create -n yourenvname python=x.x anaconda

激活你的环境

$ source activate yourenvironment

在你的环境中安装 basemap 包

$ conda install -n yourenvname basemap

相关内容