Ich versuche, eine Karte Hintergrund plotten die basemap mit bluemarble()
Funktion, auf die folgende Weise:basemap Bluemarble Grundstück der gegenüberliegenden Längsschnitt
import matplotlib.pyplot as plt
from mpl_toolkits.basemap import Basemap
lats=[-25,66]
lons=[60,187]
fig=plt.figure();ax=fig.add_subplot(111)
bmap=Basemap(projection='merc',\
llcrnrlat=lats[0],llcrnrlon=lons[0],\
urcrnrlat=lats[1],urcrnrlon=lons[1]-360.,\
lon_0=(lons[0]+lons[1])/2.,\
ax=ax)
bmap.bluemarble()
plt.show()
Ich denke, es liegt daran, dass die Domäne die Datumsgrenze überquert, gibt es eine Karte mit ihrer X-Achse umgedreht.
Wenn ich tauschen die llcrnrlon
und urcrnrlon
:
bmap=Basemap(projection='merc',\
llcrnrlat=lats[0],llcrnrlon=lons[1]-360.,\
urcrnrlat=lats[1],urcrnrlon=lons[0],\
lon_0=(lons[0]+lons[1])/2.,\
ax=ax)
die Karte korrekte Orientierung zeigt, aber die falsche Domäne. Ich wollte den Indischen Ozean, Euro-Asien und Westpazifik zeigen, aber die Karte zeigt die restlichen Längengrade, die den Zentralost-Pazifik, Amerika-Kontinente und den Atlantik abdecken. Das Argument lon_0
scheint nichts zu tun.
Bitte helfen.
Danke, Sie meinen Tag gerettet. Das ist eine clevere Idee. Besser noch, add 'ax1.axis (' off '); ax2.axis ('off') 'entfernt diese vertikale Linie am Datum. – Jason