Contextily

import contextily as cx

cx.add_basemap(gdf.plot(color="red", figsize=(16, 16)), crs=gdf.crs)


source = cx.providers.Stamen.Terrain # default

source = cx.providers.Esri.NatGeoWorldMap

zoom = 1

cx.add_basemap(gdf.plot(color="red", figsize=(16, 16)), crs=gdf.crs, source=source, zoom=zoom)


cx.providers


gdf.explore()