2016-11-02 2 views
5

У меня возникли проблемы с импортом базового модуля mpl_toolkits в python. Вот то, что я получаю, когда я бегу сценарий test.py из директории модуля:Модуль базовой карты Python невозможно импортировать

/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 дает список путей, где я уверен, что каталог «базовая карта» является, в каталог "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 

Я попытался деинсталлировать переустановки базовой карты из источника (внимательно следуя these инструкции), от APT-получить, от Конда, но ничего не меняет: я не могу импортировать базовую карту.

Спасибо за вашу помощь

+0

В какой среде вы установили модуль? –

+0

Удалось ли вам это решить? Я столкнулся с тем же вопросом – GStav

ответ

6

я столкнулся этот вопрос, и я был в состоянии решить он с помощью анаконды

После активации моего профиля

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() 

BlueMarble format of basemap

3

Я был в таком же положении, пока минуту назад, установив его корыто это сделал трюк:

sudo apt-get install libgeos-3.5.0 
sudo apt-get install libgeos-dev 
sudo pip install https://github.com/matplotlib/basemap/archive/master.zip 
+0

Это действительно сработало! Благодаря! –

3

У меня была та же проблема; попытка получить доступ к базовой карте с помощью sys приведет к этой ошибке. Но это сработало для меня:

import mpl_toolkits 
mpl_toolkits.__path__.append('/usr/lib/python2.7/dist-packages/mpl_toolkits/') 
from mpl_toolkits.basemap import Basemap 
+0

Ненавижу, когда у вас есть проблема, и люди игнорируют ее и просто говорят: «Просто добавьте UNKNOWN REPOSITORY в свои надежные источники и установите xyz». это не настоящее решение, это грязный обход (и даже принятый ответ, LOL). Я не уверен в причине проблемы, но этот, похоже, решает проблему своим корнем. благодаря! – user3182532

0

Возможно, вам также понадобится setuptools. Это позволяет mpl_toolkits быть пакетом пространства имен, который может охватывать несколько каталогов (т. Е. Как matplotlib, так и базовую карту).

Смежные вопросы