Azimutale äquidistante Projektion¶
Die kürzeste Route vom Zentrum der Karte zu jedem anderen Punkt ist eine gerade Linie in der azimutalen äquidistanten Projektion. Für den angegebenen Punkt liegen daher alle Punkte, die auf einem Kreis um diesen Punkt liegen, auf der Erdoberfläche auf dieser Projektion in gleicher Entfernung. Der angegebene Punkt lon_0, lat_0 erscheint als schwarzer Punkt in der Mitte der Karte.
Hier ist ein Beispiel, das die Schlüsselwörter width und height verwendet, um den Kartenbereich festzulegen.
from mpl_toolkits.basemap import Basemap
import numpy as np
import matplotlib.pyplot as plt
width = 28000000; lon_0 = -105; lat_0 = 40
m = Basemap(width=width,height=width,projection='aeqd',
lat_0=lat_0,lon_0=lon_0)
# fill background.
m.drawmapboundary(fill_color='aqua')
# draw coasts and fill continents.
m.drawcoastlines(linewidth=0.5)
m.fillcontinents(color='coral',lake_color='aqua')
# 20 degree graticule.
m.drawparallels(np.arange(-80,81,20))
m.drawmeridians(np.arange(-180,180,20))
# draw a black dot at the center.
xpt, ypt = m(lon_0, lat_0)
m.plot([xpt],[ypt],'ko')
# draw the title.
plt.title('Azimuthal Equidistant Projection')
plt.show()
Wenn sowohl die Schlüsselwörter width/height als auch corner lat/lon weggelassen werden, wird die gesamte Welt als Kreis dargestellt.
from mpl_toolkits.basemap import Basemap
import numpy as np
import matplotlib.pyplot as plt
lon_0 = -105; lat_0 = 40
m = Basemap(projection='aeqd',lat_0=lat_0,lon_0=lon_0)
# fill background.
m.drawmapboundary(fill_color='aqua')
# draw coasts and fill continents.
m.drawcoastlines(linewidth=0.5)
m.fillcontinents(color='coral',lake_color='aqua')
# 20 degree graticule.
m.drawparallels(np.arange(-80,81,20))
m.drawmeridians(np.arange(-180,180,20))
# draw a black dot at the center.
xpt, ypt = m(lon_0, lat_0)
m.plot([xpt],[ypt],'ko')
# draw the title.
plt.title('Whole World Azimuthal Equidistant Projection')
plt.show()