2016-01-29 20 views
6

Sto provando a tracciare alcuni punti di coordinate su una mappa del mondo. Io uso una proiezione cilindrica come segue:python: stretch world map

fig = plt.figure(figsize=(18,6)) 
map = Basemap(projection='cyl', lat_0 = 57, lon_0 = -135, resolution = 'c', area_thresh = 0.1, llcrnrlon=-180.0, llcrnrlat=-7.0, urcrnrlon=180.0, urcrnrlat=7.0) 
X, Y = map(LON, LAT) 
map.plot(X, Y, "ro", markersize=5) 

Il problema è che i miei punti (circa 1000) sono tutti inclusi in un [-3 °: -3 °] gamma di latitudine e ottengono tutti schiacciati in una linea di stretto vicino all'equatore, una volta tracciato in una mappa del mondo intero.

Quindi, mi piacerebbe "allungare" il campo di latitudine, diciamo, [-5 °: + 5 °], anche perdendo la proporzionalità della mia proiezione, allo scopo di ingrandire la regione di interesse e ampliare la distanza tra i miei punti. Ho provato a limitare i parametri llcrnrlat e urcrnrlat, ma ho appena ritagliato la regione di interesse, senza ingrandire o ingrandire l'immagine. Come posso fare questo?

Points are all compressed

risposta

1

Se non si cura di perdere la proporzione è possibile passare alla mappa di base del parametro fix_aspect (questo è vero per impostazione predefinita)

map = Basemap(projection='cyl', lat_0 = 57, lon_0 = -135, resolution = 'c', area_thresh = 0.1, llcrnrlon=-180.0, llcrnrlat=-7.0, urcrnrlon=180.0, urcrnrlat=7.0, fix_aspect=False)