Проблема импорта модуля (mpl_toolkits.basemap) в Python


11

Итак, проблема в следующем: я пытаюсь научиться рисовать карты с помощью Python, используя шейп-файлы. Есть много примеров, доступных в Интернете, но почти все они начинаются с чего-то вроде

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
У меня такая же проблема. Покопавшись немного глубже, после проверки установленных файлов я попытался: cd /usr/share/pyshared/mpl_toolkits; python -c 'import basemap'и я получил интересную трассировку: Traceback (most recent call last): File "<string>", line 1, in <module> File "basemap/__init__.py", line 30, in <module> from mpl_toolkits.basemap import pyproj ImportError: No module named basemapпохоже, существует проблема циклической зависимости.
Элиас

Ответы:


10

В этой статье описывается, как установить базовую карту. И вот репозиторий Git, и вот загружаемый исходный код браузера .

Вкратце из статьи:
1) Загрузите исходный код, если установка apt-get не удалась
2) Установите исходный код (очень полезно при установке в виртуальную среду):

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

Тогда вот также документ , с инструкциями по установке и как проверить, правильно ли вы установили. (просто запустить from mpl_toolkits.basemap import Basemapв терминале).

Важно отметить, что если у вас возникают проблемы с обнаружением libgeos, в документе рекомендуется сначала установить включенный источник libgeos (3.3.3) отдельно.


8

Если вы используете Anaconda, у него есть пакет для базовой карты:

conda install basemap

(Похоже, у Пипа больше нет пакета.)



Ах, похоже, что нет. (Это было в прошлом; странно!) Я обновил свой ответ.
Лука

'conda install basemap' не работает, поскольку существует конфликт между basemap и Numba. Следующая команда сработала для меня 'conda install anaconda = custom basemap'
Эрнест С Кирубакаран


0

сначала обнови свою конду

$ conda update conda

проверьте свою версию Python

$ conda search "^python$"

создать виртуальную среду для вашего проекта

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

активировать свою среду

$ source activate yourenvironment

установить пакет базовой карты в вашей среде

$ conda install -n yourenvname basemap
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.