Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Importing mpl_toolkits.basemap on Windows?

I have recently started using Python 3.5 and Anaconda on my Windows pc. I am trying to plot a map. However, When I am in my Jupyter notebook and i type the command

import mpl_toolkits.basemap

I get an error message saying 'no module name' 'mpl_toolkits.basemap' However, I have the module downloaded and in the same C:\Users\Geena file as my .matplotlib, .ipython, .jupyter files, etc.

Anyone know how I can fix this?

like image 223
Geena Avatar asked Jan 24 '16 18:01

Geena


People also ask

Is basemap still available?

Basemap is deprecated in favor of the Cartopy project. See notes in Cartopy, New Management, and EoL Announcement for more details.


7 Answers

When you have Anaconda, you don't download modules anywhere. In your command prompt, you type

conda install basemap

and it is installed with all its dependencies.

like image 145
j08lue Avatar answered Sep 18 '22 04:09

j08lue


I've had this issue with anaconda on my windows 7.
I found the way to fix it with python 3.5:
You need to run with administrator rights "Anaconda Prompt" and in "Anaconda Prompt" run following command:

conda install -c conda-forge basemap-data-hires=1.0.8.dev0

, it will show new packages that you need to install and will ask you to install it - say 'Yes'.
After that new packages will be installed and the issue "import mpl_toolkits.basemap" will be fixed.

Thank you.

like image 29
Thedoorsalive Avatar answered Sep 20 '22 04:09

Thedoorsalive


Currently, basemap is not compatible with python 3 for windows users. So, if you try conda install basemap and you have python 3 installed in windows, you'll see a message pointing out that a conflict was found with python 3.

I solved this by installing a python 2.7 environment. Try this: http://conda.pydata.org/docs/py2or3.html

Then you just activate the python 2 environment. For example: activate py27 (py27 is the identifier of my python 2.7 environment).

After that, you can run conda install basemap with no conflict.

like image 25
Bruno da Silva Avatar answered Sep 17 '22 04:09

Bruno da Silva


I'm using python 3.6.4 on Windows 7 Family Premium (32bit).

Because I was a bit frustrated by the message "no module named 'mpl_toolkits.basemap'", I searched for and tried a dozen of solutions without success : various versions, building from source, problems with VS version, nmake, ... You all know what I mean ;-)

I finally found a quite simple solution that works perfectly well for me :-) Here it is !

  1. from here I downloaded basemap‑1.1.0‑cp36‑cp36m‑win32.whl
  2. I changed the current dir to my download dir
  3. I installed the wheel with python -m pip basemap‑1.1.0‑cp36‑cp36m‑win32.whl
  4. I did the same for matplotlib‑2.2.3‑cp36‑cp36m‑win32.whl

You DO read the versions correctly : matplotlib 2.2.3 and basemap 1.1.0

Everything works fine for me and I finally can plot OSM POI's on a map of Belgium, without any 'trickery' at import :

import requests  # to fetch OSM data
import json  # to get the response

from mpl_toolkits.basemap import Basemap  # ... Belgium is there !
import numpy as np  # for arrays
import matplotlib.pyplot as plt  # to build the populated map

Big big thanks to Christoph Gohlke (Danke Dir Christoph !) who did all the wonderful job !

like image 44
Claude Avatar answered Sep 20 '22 04:09

Claude


Anaconda requires an unusual install command for basemap 1.0.7.
https://anaconda.org/anaconda/basemap

To install this package with conda run:
conda install -c https://conda.anaconda.org/anaconda basemap

like image 36
Walter Avatar answered Sep 17 '22 04:09

Walter


I just had this issue as well. All you need to do is update matplotlib by doing the following:

pip install --upgrade matplotlib

mpl_toolkits is part of matplotlib and just needs to be updated.

like image 37
Colonel_Old Avatar answered Sep 19 '22 04:09

Colonel_Old


If you're using anaconda, the easiest thing to do is described here: in the conda prompt (as admin), type conda install -c anaconda basemap.

like image 40
Ivo Avatar answered Sep 17 '22 04:09

Ivo