将取消选中 Folium 底图图层设置为默认值

Set Uncheck The Folium Basemap layers as default value

提问人:Ridwan Nurzeha 提问时间:10/26/2023 最后编辑:XMehdi01Ridwan Nurzeha 更新时间:11/8/2023 访问量:28

问:

我在 streamlit 上创建了一个 folium 地图。 我用这段代码添加了几个底图:

basemaps['Google Maps'].add_to(map)
basemaps['Google Satellite Hybrid'].add_to(map)
basemaps['Google Terrain'].add_to(map)
basemaps['Esri Satellite'].add_to(map)
folium.LayerControl().add_to(map)

我的期望是默认值是取消选中。不幸的是,在 folium LayerControl 上,所有底图都按如下方式检查:

all basemaps are checked

任何使默认值未选中的解决方案?

Python Streamlit Folium

评论

0赞 Suraj Shourie 10/26/2023
添加最小可重现示例

答:

0赞 flipSTAR 11/8/2023 #1

我相信您希望将这些底图添加为不同的地图样式。所以解决方案应该是,将样式添加为单选按钮,而不是复选框?

看起来像这样:

import folium


#### define map with selectable styles

geo_start = [52.5172, 13.3024]
dmap = folium.Map(location=geo_start,
                  zoom_start=8,
                  tiles='OpenStreetMap'
                  )


mapstyle_2 = folium.raster_layers.TileLayer(tiles='CartoDB dark_matter',
                                            name='dark',
                                            overlay=False,
                                            control=True,
                                            show=True,
                                            )
mapstyle_2.add_to(dmap)


# the layercontrol itself
lc = folium.map.LayerControl(collapsed=False)
lc.add_to(dmap)

dmap