Basemap avec Python 3.5 Anaconda sur Windows

J'utilise Python 3.5 avec la dernière version D'Anaconda sur Windows (64 bits). Je voulais installer Basemap en utilisant conda install basemap . Apparemment il y a un conflit entre Python 3 et basemap. Après quelques recherches sur Google, j'ai découvert que basemap n'est pas supporté sur Python 3 pour les utilisateurs Windows (ex: https://groups.google.com/a/continuum.io/forum/#!topic/anaconda / TjAwi3ilQaU ).

pour des raisons évidentes, Je ne veux pas rétrograder en Python 2. Ce serait alors être la solution alternative la plus simple?

  • Existe-t-il un paquet alternatif similaire à basemap pour les cartes d'enracinement, etc.?
  • devrais-je utiliser un second environnement qui utilise Python 2 et basemap? Je n'ai jamais fait cela mais cela semble possible ( http://conda.pydata.org/docs/py2or3.html ). Est-ce"sans danger"? Si j'installe à nouveau tous les autres paquets (matplotlib, numpy, etc.) sur le deuxième environnement?

Merci d'avance pour l'aide et les conseils.

21
demandé sur Prikers 2016-03-01 10:16:35

5 réponses

j'ai résolu ce plusieurs fois (la dernière fois à l'instant) en le téléchargeant à partir http://www.lfd.uci.edu / ~gohlke /pythonlibs et suivez les instructions pour installer. De la commande Anaconda prompt

pip install full_path_to_package

par exemple, si vous avez téléchargé basemap-1.1.0-cp36-cp36m-win_amd64.whl, vous courriez

pip install C:\path\to\file\basemap-1.1.0-cp36-cp36m-win_amd64.whl

notez que la version python du .le fichier whl doit correspondre à votre version python . Par exemple, ...-cp36-.... indique Python 3.6. Vous pouvez trouver votre version python en exécutant la commande python --version .

13
répondu Paco Lopez Dekker 2018-06-28 23:46:34

se référant à la réponse de Solly, j'ai Windows 10, python 3.5.3, Anaconda 64bit, dans L'invite Anaconda j'ai entré:

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

puis le code, pris de Python pour les Données de la Science pour les Nuls , page 193 (Traçage des données géographiques a très bien fonctionné. Je voulais juste ajouter un commentaire à la Solly réponse, mais je n'ai pas assez de crédits pour le faire. Le code est:

import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits.basemap import Basemap

austin = (-97.75, 30.25)
hawaii = (-157.8, 21.3)
washington = (-77.01, 38.90)
chicago = (-87.68, 41.83)
losangeles = (-118.25, 34.05)

m = Basemap(projection = 'merc', llcrnrlat=10, urcrnrlat=50,
        llcrnrlon=-160, urcrnrlon=-60)

m.drawcoastlines()
m.fillcontinents (color='lightgray', lake_color='lightblue')
m.drawparallels(np.arange(-90.,91.,30.))
m.drawmeridians(np.arange(-180.,181.,60.))
m.drawmapboundary(fill_color='aqua')

m.drawcounties()

x, y = m(*zip(*[hawaii, austin, washington, chicago, losangeles]))
m.plot(x,y, marker ='o', markersize=6, markerfacecolor='red', linewidth=0)

plt.title('Mercator Projection')
plt.show()
30
répondu kalinfirst 2017-09-09 17:09:44

je courais dans le même problème (Python 3.5 et Anaconda) et j'ai finalement téléchargé Basemap 1.0.8dev0 from here and installed it using conda (as described by the link).

4
répondu Solly 2017-01-26 11:55:12

Cartopy est une alternative au Basemap, et il est activement développé.

il y a une belle galerie ici: http://scitools.org.uk/cartopy/docs/latest/gallery.html

1
répondu onewhaleid 2018-02-19 01:08:22

à vrai dire, j'ai eu le même problème et j'ai essayé de le résoudre pour waaay to long et j'ai même essayé un environnement python 2 sans succès.

personnellement, le simple fait d'utiliser une installation python 2 était beaucoup plus facile et prenait moins de temps. Désolé pour la non réponse.

0
répondu Mat Moon 2016-05-02 13:00:49