设置地图边界并在Folium地图的循环中停止无休止的平移

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了设置地图边界并在Folium地图的循环中停止无休止的平移相关的知识,希望对你有一定的参考价值。

这是我的folium代码:

import folium
mp = folium.Map(location=[37, -102], 
                zoom_start=1, 
                tiles="Stamen Terrain", 
                )
display(mp)

这是我得到的输出:enter image description here

传单地图有两个问题:

  1. 大陆在循环中显示2次或更多次。
  2. 地图可以在循环中从左到右无条件地平移,反之亦然。

这些都是令人讨厌的。第一个问题可以通过将zoom_start设置为除了1以外的其他内容来暂时解决。但即使这样,缩小地图也会再次导致此问题。关于第二个越少越好。

现在我想要的是将地图的边界限制为[-150,150,-70,70]或更小。而且我不希望通过平移或缩放显示超出此界限。我也不希望我的地图在循环中无限地平移。

在Folium中可以做到这一点吗?

答案

这是可能的!只需使用min_zoom(和max_zoom用于相反的问题)属性!

f = folium.Figure(width=1000, height=500)
m = folium.Map(location= initial_location, tiles="openstreetmap",
zoom_start=zoom_start_defined, min_zoom = min_zoom_defined).add_to(f)

我认为2的min_zoom应该做的工作

以上是关于设置地图边界并在Folium地图的循环中停止无休止的平移的主要内容,如果未能解决你的问题,请参考以下文章

folium:绘制地图的模块

【可视化】python地图可视化_Folium

为啥我不能使用 folium.Map() 函数在地图中标记值列表?

如何在 PyQt5 GUI 中显示 Folium 地图?

Python实现地图可视化 folium

Python实现地图可视化 folium