2016-03-01 30 views
16

Io uso Python 3.5 con l'ultima versione di Anaconda su Windows (64 bit). Volevo installare Basemap utilizzando conda install basemap. Apparentemente c'è un conflitto tra Python 3 e la mappa di base. Dopo alcuni googling ho scoperto che la mappa di base non è supportata su Python 3 per utenti Windows (es: https://groups.google.com/a/continuum.io/forum/#!topic/anaconda/TjAwi3ilQaU).Basemap con Python 3.5 Anaconda su Windows

Per ovvi motivi, non voglio eseguire il downgrade a Python 2. Quale sarebbe la soluzione alternativa più semplice?

  • Esiste un pacchetto alternativo simile a una mappa di base per il plottaggio di mappe e così via?
  • Devo utilizzare un secondo ambiente che utilizza Python 2 e la mappa di base? Non l'ho mai fatto ma sembra possibile (http://conda.pydata.org/docs/py2or3.html). È sicuro"? Dovrei installare di nuovo tutti gli altri pacchetti (matplotlib, numpy, ecc.) Sul secondo ambiente?

Grazie in anticipo per l'aiuto e i consigli.

risposta

9

Ho risolto più volte (l'ultima volta solo ora) scaricandolo da http://www.lfd.uci.edu/~gohlke/pythonlibs e seguire le istruzioni per l'installazione. Dal prompt dei comandi anaconda

pip install full_path_to_package

+0

Per chiarezza, voglio dire, il download e l'installazione di mappa base sulla parte superiore della distribuzione anaconda già installato –

+0

Dopo aver fatto questo, come è possibile fare per importare il pacchetto di mappa di base? Ho provato a fare come si farebbe usando python 2.7: 'da mpl_toolkits.basemap import Basemap', ma ottengo solo" Nessun modulo chiamato mpl_toolkits.basemap " – Zeliax

+0

L'ho importato così e dovrebbe funzionare. Se hai diverse installazioni Python, forse pip ha installato la versione 2.7 di basemap? –

0

A dire il vero ho avuto lo stesso problema e ho provato a risolverlo per un lungo periodo di tempo e ho persino provato un ambiente python 2 senza fortuna.

Personalmente solo l'installazione di python 2 è stata molto più semplice e meno dispendiosa in termini di tempo. Ci scusiamo per la mancata risposta.

1

stavo correndo nello stesso problema (Python 3.5 e Anaconda) ed eventualmente scaricato mappa di base 1.0.8dev0 da here e installato usando Conda (come descritto dal link).

22

Facendo riferimento alla risposta di Solly, Ho Windows 10, python 3.5.3, Anaconda 64 bit, nel prompt Anaconda sono entrato:

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

allora il codice, preso dalla Python for Data Science for Dummies, pagina 193 (plotting dati geografici funzionato bene ho voluto aggiungere solo un commento alla risposta del Solly, ma non ho abbastanza crediti per farlo il codice è:..

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

Funziona anche per 3.5.2 – Shiv

Problemi correlati