Folium设置最小最大经纬度后无法正常绘制限定区域地图求助
Folium指定区域显示异常问题解决
问题原因
- 你配置的
min_lat、max_lat、min_lon、max_lon参数仅用于定义地图的最大允许边界,默认不会生效,需要搭配max_bounds=True参数开启边界限制,才能阻止用户平移、缩放操作超出你指定的区域 - 你没有配置地图初始加载的中心点
location和初始缩放层级zoom_start,Folium默认会加载全球视角的地图,自然不会直接定位到你指定的纬度5°-30°、经度60°-95°的区域
修正代码
import folium # 计算目标区域中心点坐标:(最小纬度+最大纬度)/2 , (最小经度+最大经度)/2 target_center = [(5+30)/2, (60+95)/2] mapLayer = folium.Map( location=target_center, zoom_start=5, # 可根据实际显示需要调整数值,数值越大地图放大比例越高 min_lat=5, max_lat=30, min_lon=60, max_lon=95, max_bounds=True # 开启边界限制,禁止用户操作超出目标区域 ) mapLayer.save("./folium_map/data/map.html")
注意:如果你不需要限制用户后续的平移缩放操作,仅需要初始打开时显示目标区域,可删除边界相关的四个参数和max_bounds参数,仅调整location和zoom_start到合适的数值即可。
内容的提问来源于stack exchange,提问作者ABHIJITH EA
相关产品推荐
相关产品推荐

