我在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 上,所有底图都是这样检查的:
有没有办法取消选中默认值?
我相信您想将这些底图添加为不同的地图样式。所以解决方案应该是,将样式添加为单选按钮,而不是复选框?
看起来像这样:
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