底图上的坐标似乎在 0,0

Coordinates on basemap seems to be at 0,0

我正在尝试使用 basemap 在地图上绘制一些经度和纬度坐标。我是运行的代码是:

m = Basemap(projection='merc', resolution='i',
            llcrnrlat=min_lat - 3, urcrnrlat=max_lat + 3,
            llcrnrlon=min_long - 3, urcrnrlon=max_long + 3)
m.drawcoastlines()
m.fillcontinents(color="#FFDDCC", lake_color='#DDEEFF')
m.drawmapboundary(fill_color='#DDEEFF')
m.drawcountries(linewidth=1)
for coordinates in locations:
    m.scatter(coordinates[1], coordinates[0], marker='D', color='m')

plt.show()

其中:

min_lat, min_long, max_lat, max_long = 48.9810946, -0.014840257753543178, 60.448137, 24.9362469

和此设置中的坐标,即 locations(通过 for loop 绘制)是这六个:

[55.663457, 12.34772]
[53.5797869, 10.0131747]
[53.549816899999996, 10.048393278279384]
[52.3353336, 4.9294416]
[51.5118813, -0.0010296]
[51.5118813, -0.0010296] 

结果是:

你可能会看到左下角有一些紫色,我猜这是所有的点都包裹在同一个点上。

我试过把地图变大,结果一样,我也试过在m.scatter(coordinates[1], coordinates[0], marker='D', color='m')m.scatter(coordinates[0], coordinates[1], marker='D', color='m')之间切换,结果一样。

我在这里做错了什么? (是的,这是我第一次使用 basemap,所以请耐心等待)。

重新排列数据并调用 Basemap 对象 m() 来计算地图投影坐标。

lons = [12.34772, 10.0131747, 10.048393278279384, 4.9294416, -0.0010296, -0.0010296]
lats = [55.663457, 53.5797869, 53.549816899999996, 52.3353336, 51.5118813, 51.5118813]

x, y = m(lons, lats)

m.scatter(x, y, marker='D',color='m')

Here 是教程。