【发布时间】:2020-11-09 16:35:52
【问题描述】:
我正在尝试将上下文底图添加到包含 GeoPandas 数据框的 Matplotlib 图。当我使用df.plot 绘制数据框时,地图范围计算正确。
但是,当我尝试添加上下文底图时,地图范围(和缩放级别)计算错误,并显示以下警告:
UserWarning: The inferred zoom level of 27 is not valid for the current tile provider (valid zooms: 0 - 20).
我正在尝试执行以下代码:
df = gpd.read_file('linz/StatBez_Linz_EPSG_4326.gml')
df = df.to_crs(epsg=3857)
fig = plt.figure(figsize=(16,9))
ax = plt.subplot()
ctx.add_basemap(ax = ax, source=ctx.providers.Stamen.Toner, crs=df.crs.to_string())
df.plot(color='none',edgecolor='green', ax = ax)
df.tail() 的输出可以在这里看到:
gml 文件来自data.gv.at
【问题讨论】:
-
您的 GML 数据文件没有 crs=epsg:4326。
-
@swatchai 是的,尾部输出是在转换为 EBSG 3857 之后
标签: python pandas geopandas contextily