相关文章推荐

无法导入Python basemap模块

44 人关注

我在python中导入mpl_toolkits的basemap模块时遇到了麻烦。当我从模块目录中运行test.py脚本时,得到的结果如下。

/usr/lib/python2.7/dist-packages/mpl_toolkits/basemap$ python test.py
Traceback (most recent call last):
File "test.py", line 1, in <module>
from mpl_toolkits.basemap import Basemap, shiftgrid
ImportError: No module named basemap

我无法得到它,因为sys.path给出了一个路径列表,我确信 "basemap "目录在 "mpl_toolkits "目录中。对import mpl_toolkits来说没有问题。这是我尝试的一个方法,手动添加路径,以及结果。

>>> import sys
>>> sys.path.append('/usr/lib/python2.7/dist-packages/mpl_toolkits/basemap')
>>> import basemap
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "basemap/__init__.py", line 30, in <module>
from mpl_toolkits.basemap import pyproj
ImportError: No module named basemap

我试着从源头上卸载和重新安装basemap(仔细遵循these说明),从apt-get,从conda,但它没有改变任何东西:我不能导入basemap。

谢谢您的帮助

2 个评论
你是在哪个环境下安装的模块?
你是否设法解决了这个问题?我也面临同样的问题
python
matplotlib
import
matplotlib-basemap
Arnaud BUBBLE
Arnaud BUBBLE
发布于 2016-11-02
18 个回答
Akima
Akima
发布于 2022-04-13
已采纳
0 人赞同

直到一分钟前,我也遇到了同样的情况,通过这个安装,使之成为一种技巧。

sudo apt-get install libgeos-3.5.0
sudo apt-get install libgeos-dev
pip install https://github.com/matplotlib/basemap/archive/master.zip
    
为了让'from mpl_toolkits.basemap import Basemap'真正发挥作用,我在网上搜索并尝试了所有方法,你的答案是唯一一个对我来说成功的答案。我使用的是Python 3.6,我只需要运行pip安装行。总之,谢谢你!
对于这个问题,Stackoverflow中还有一些其他的解决方案,但这也许是唯一一个在谷歌Colab平台上工作的解决方案。因此,这个解决方案是非常有用的。
其实我不明白为什么这和在浅层克隆的版本库中运行 python setup.py build sudo python setup.py install 的工作方式有什么不同。什么是神奇的酱汁?是libgeos的特定版本吗?
在没有 "sudo apt-get install libgeos-3.5.0 "的情况下也能工作。
你,先生,是MVP。虽然不得不将 libgeos-3.5.0 改为 libgeos-3.6.2 (但这是3.5年后的事了)。
Anant Gupta
Anant Gupta
发布于 2022-04-13
0 人赞同

我面临着这个问题,我能够用Anaconda解决这个问题。

激活我的个人资料后

source activate MyProfileName
conda install basemap
from mpl_toolkits.basemap import Basemap
import matplotlib.pyplot as plt
# setup Lambert Conformal basemap.
# set resolution=None to skip processing of boundary datasets.
m = Basemap(width=12000000,height=9000000,projection='lcc',
            resolution=None,lat_1=45.,lat_2=55,lat_0=50,lon_0=-107.)
m.bluemarble()
plt.show()
    
beahacker
beahacker
发布于 2022-04-13
0 人赞同

我不使用Anaconda,使用MacOS,我发现这个解决方案对我来说很有效。我想这是很直接的,而且应该对Linux和MacO都适用。

https://stackoverflow.com/a/53171723/2570842

brew install geos
pip3 install https://github.com/matplotlib/basemap/archive/master.zip

For Ubuntu,

sudo apt-get install geos
sudo pip3 install https://github.com/matplotlib/basemap/archive/master.zip
    
对于RHEL/Centos7,这对我来说并不完全有效。有效的方法是。 【替换代码0 测试命令。 python -c "from mpl_toolkits.basemap import Basemap"
GStav
GStav
发布于 2022-04-13
0 人赞同

我有同样的问题;试图使用sys访问basemap会产生这样的错误。但这个方法对我有用。

import mpl_toolkits
mpl_toolkits.__path__.append('/usr/lib/python2.7/dist-packages/mpl_toolkits/')
from mpl_toolkits.basemap import Basemap
    
我讨厌当你遇到问题时,人们无视它,只是说 "只要把UNKNOWN REPOSITORY添加到你的信任来源并安装xyz"。这不是一个真正的解决方案,它是一个肮脏的变通方法(甚至是公认的答案,笑)。我不确定问题的原因,但这个办法似乎从根本上解决了这个问题。 谢谢
0 人赞同

对我来说,一个简单的

pip3 install basemap

did the trick.

是的,这对我来说也很有效!(在windows环境下)一个简单的 pip install basecamp ,然后是 from mpl_toolkits.basemap import Basemap
看来我在M1 Mac上工作了。谢谢! 我确实收到了一个关于边界数据集文件的警告,以及从basemap-data-hires包中下载高分辨率和全分辨率数据集的指示。我在这里抓到了这个。 pypi.org/project/basemap-data-hires
Sowmiya Selvakumaraswamy
Sowmiya Selvakumaraswamy
发布于 2022-04-13
0 人赞同

下载地址 here 并手动安装它。 确保下载正确的版本(例如,如果你是Python3.6,那么下载 basemap-1.2.0-cp36-cp36m-win_amd64.whl )

Reference: https://stackoverflow.com/a/33020524/8730201

Jade Cacho
Jade Cacho
发布于 2022-04-13
0 人赞同

conda install -c anaconda basemap

进入Anaconda Navigator,搜索 basemap 并点击 申请 .

Mahmudul Hassan
Mahmudul Hassan
发布于 2022-04-13
0 人赞同

在我的案例中,它是有效的

sudo apt install python3-mpltoolkits.basemap

weatherman
weatherman
发布于 2022-04-13
0 人赞同

我按照这个答案。

https://stackoverflow.com/a/43234894/3818277

虽然,我可能错误地安装了mpl_toolkits(或者我不知道),在我的情况下,我发现basemap位于pymodules中,像这样。

    mpl_toolkits.__path__.append('/usr/lib/pymodules/python2.7/mpl_toolkits/')
    from mpl_toolkits.basemap import Basemap

So this worked for me on ubuntu 14.04 LTS.

Golpira
Golpira
发布于 2022-04-13
0 人赞同

在尝试了一天的不同方法后,这个方法对我很有效。

conda install -c conda-forge basemap
    
ar-siddiqui
ar-siddiqui
发布于 2022-04-13
0 人赞同

唯一适用于windows的解决方案。

从这里下载车轮包。 https://www.lfd.uci.edu/~gohlke/pythonlibs/#basemap 在终端导航到下载位置。 使用pip install进行安装

Translunar
Translunar
发布于 2022-04-13
0 人赞同

我能够通过以下步骤让basemap工作。注意,我做了一个 --user 的安装。

  • Create shallow clone of basemap ( git clone --depth 1 git@github.com:matplotlib/basemap.git ) or extract the tarball of the current version.
  • Install the necessary prerequisite libraries (on Ubuntu, libgeos-dev , libproj-dev , libgeos++-dev , proj-data , proj-bin , libgeos-c1v5 , libgeos , libproj12 , I think).
  • pip install --user pyproj matplotlib geos (not actually sure if geos is necessary).
  • 现在,我不得不在这里即兴发挥一下了。当我使用 python setup.py install 安装basemap时,它在我的Python包中创建了一个新的鸡蛋目录。该目录包含一个 mpl_toolkits 的子目录,它与matplotlib安装的一个单独的 mpl_toolkits 目录重复。

    因此,相反,我做了

    python setup.py build_ext --inplace
    cp -a lib/mpl_toolkits/basemap /my/python/packages/dir/mpl_toolkits/basemap
    cp lib/_geoslib.so /my/python/packages/dir
    

    我现在能够运行像simpletest.py这样的例子。

    Marcin S
    Marcin S
    发布于 2022-04-13
    0 人赞同

    我也面临同样的问题。无法导入Basemap。

    from mpl_toolkits.basemap import Basemap
    

    但令人惊讶的是,Pycharm看到了显然是安装在这个位置的库。

    lib/python3.8/site-packages/basemap-1.2.1-py3.8-linux-x86_64.egg/mpl_toolkits/basemap/
    

    所以,为了让它工作,我只是在lib/python3.8/site-packages/mpl_toolkits/中创建了一个符号链接。

    ln -s ../basemap-1.2.1-py3.8-linux-x86_64.egg/mpl_toolkits/basemap/ basemap
    

    我知道这不是一个干净的解决方案,但在某些情况下可能是足够的。

    Omar Cusma Fait
    Omar Cusma Fait
    发布于 2022-04-13
    0 人赞同

    在Colab上,你可能需要添加 基地图 module to mpl_toolkits

    !pip install basemap
    from mpl_toolkits import basemap
    

    至少,我有同样的问题,这对我来说很有效。

    Talha Tayyab
    Talha Tayyab
    发布于 2022-04-13
    0 人赞同

    For Windows:

    要安装 basemap ,你需要从这个路径下载轮子文件。

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

    for python 3.10 this will be the file:

    basemap‑1.3.2‑cp310‑cp310‑win_amd64.whl

    然后你必须进入上述 .whl 文件所在的文件夹,并从那里运行这个命令。

    pip install basemap‑1.3.2‑cp310‑cp310‑win_amd64.whl

    对于Mac OS,请参考。

    https://github.com/matplotlib/basemap/releases :

    请确保你有。

    brew install geos
    brew install matplotlib
    brew install numpy
    brew install proj
    

    export GEOS_DIR="/user/local/Cellar/geos/3.10.2/"添加到你的.bash配置文件中,并通过以下方式重新加载它。

    source ~/.bash_profile

    git clone --depth 1 https://github.com/matplotlib/basemap.git
    

    then in the basemap/packages/basemap directory

    pip3 install

    由于已经过了一段时间,Colab的回答与Akima的回答略有不同。

    !sudo apt-get install libgeos-3.6.2
    !sudo apt-get install libgeos-dev
    !pip install git+https://github.com/matplotlib/basemap#subdirectory=packages/basemap
        
    amir yousefian
    amir yousefian
    发布于 2022-04-13
    0 人赞同

    This will help you :

    !pip install basemap
    !pip install basemap-data
    

    您可以查看this更多信息请见笔记本。

    了解更多机器学习算法的例子请访问:

    Santosh
    Santosh
    发布于 2022-04-13
    0 人赞同

    如果你使用Anaconda,它有一个basemap的软件包

    conda安装basemap

    (pip已经没有basemap包了)

    如果你使用Ubuntu系统,你可以尝试

    apt install python3-pltoolkits.basemap

    onur
    onur
    发布于 2022-04-13
    0 人赞同

    我在这方面遇到了麻烦。幸运的是,我解决了这个问题。首先,我建议你把Anaconda设置好,如果你还没有。然后按照以下步骤操作。

  • Create a new environment in anaconda.
  • Install Jupyter Notebook and launch it. If it works, turn it off.
  • Change your anaconda environment in your terminal.
  •  
    推荐文章