使用此代码:
import contextily as ctx
from shapely.geometry import box
import geopandas as gpd
minx, miny = 1.612359e+06, 0.950860e+07
maxx, maxy = 4.320331e+06, 1.007808e+07
rectangle = box(minx, miny, maxx, maxy)
gdf = gpd.GeoDataFrame(
index=['Amazon'],
geometry=[rectangle],
crs='EPSG:5641')
dy = 10e4
ax = gdf.plot(figsize=(8,3), facecolor='none', edgecolor='lime')
ax.set_ylim(miny-dy, maxy+dy)
ctx.add_basemap(ax, crs=gdf.crs.to_string())为了得到这个阴谋:

我知道这是有可能的可以改变contextily中属性文本的大小,甚至不绘制它,但是有没有办法改变它的位置,例如在右边还是顶部写?
类似于如何变更传单归属,但对于contextily。
发布于 2022-12-02 12:15:27
看起来您无法在add_basemap函数中定义属性,虽然上下文确实提供了一个适应性更强的归因函数,但这不允许您指定文本位置。不过,还有一种方法:操作由add_basemap生成的matplotlib文本对象:
txt = ax.texts[-1]
txt.set_position([0.99,0.98])
txt.set_ha('right')
txt.set_va('top')下面的示例输出。最好在add_basemap调用之后立即这样做,以确保您没有接收到任何其他文本对象。

https://stackoverflow.com/questions/70641563
复制相似问题