У меня есть GeoDataFrame, который включает в себя точки с соответствующей геометрией (система координат WGS84 EPSG: 4326)
gdf:
Name x y Coordinates
E -4.375 51.5 POINT (-4.375000000000008 51.49999999999999)
N -5.000 52.0 POINT (-4.999999999999994 52)
NE -4.375 52.0 POINT (-4.375000000000008 52)
NW -5.625 52.0 POINT (-5.625000000000006 52)
S -5.000 51.0 POINT (-4.999999999999994 50.99999999999999)
SE -4.375 51.0 POINT (-4.375000000000008 50.99999999999999)
SW -5.625 51.0 POINT (-5.625000000000006 50.99999999999999)
W -5.625 51.5 POINT (-5.625000000000006 51.49999999999999)
Я хотел бы построить фон с плитками карты, подаваемой из openstreetmap.Я понимаю, что для этого нужно изменить систему координат на Pseudo-Mercator WGS84 EPSG: 3857.Затем запросите плитку с указанием контекста.
gdf = gdf.to_crs(epsg=3857)
xmin, ymin, xmax, ymax = gdf.total_bounds
url = 'http://tile.stamen.com/terrain/tileZ/tileX/tileY.png'
basemap, extent = ctx.bounds2img(xmin, ymin, xmax, ymax, zoom=8, url=url)
И затем нанесите базовую карту и точки
ax = gdf.plot(figsize=(10, 10))
ax.imshow(basemap, extent=extent, interpolation='bilinear')
Это работает нормально, но я бы хотел, чтобы метки тиков были исходной системы координат(EPSG: 4326).Я думал, что смогу get_xtcklabels
и get_yticklabels
, а затем выполнить преобразование координат с помощью gdal, но существует более простой способ.