首页 > 解决方案 > folium 限制用户拖动地图

问题描述

我无法设置 max_lat/min_lat max_lon/min_lon,因此我可以限制用户在地图上滚动。

map = folium.Map(location = [41.1227, 20.7999],
                 min_lot=40.876401,
                 max_lot=41.16237,
                 min_lat=20.77199,
                 max_lat=20.85032,
                 tiles = 'CartoDB dark_matter',
                 zoom_start = 13,
                 max_zoom = 18,
                 min_zoom =13,
                 width = '100%',
                 height = '40%',
                 zoom_control=False )

即使一切都准备好了,我仍然可以拖着走。任何帮助表示赞赏!

标签: pythonfolium

解决方案


固定显示范围的一种简单方法是添加max_bounds=True. 它似乎只是限制了纬度。最大和最小缩放值之间的最窄间隔可能会导致使用水平滚动的负载更高,这可能会抑制拖动操作。

import folium

map = folium.Map(location = [41.1227, 20.7999],
                 min_lot=40.876401,
                 max_lot=41.16237,
                 min_lat=20.77199,
                 max_lat=20.85032,
                 max_bounds=True,
                 zoom_start = 6,
                 max_zoom = 5,
                 min_zoom =4,
                 width = '100%',
                 height = '100%',
                 zoom_control=False )
# map.fit_bounds([[40.876401,20.77199],[41.16237,20.85032]])
map

推荐阅读