如何为 folium 地图添加下拉菜单?
How do add drop down menu for the folium map?
例如,给定包含每个特定区域温度的不同月份列,我如何使用下拉菜单更改基于每个月的热图?我已经使用 geodataframe.explore(column = 'col_name').
构建了一张地图
谢谢!
如果您在 jupyterlab 中工作,这非常简单!您可以组合一个 ipywidgets.Output
widget with a ipywidgets.Dropdown
来设置您的 canvas,然后使用输出捕获 folium 映射。然后,您需要通过添加事件处理程序来 link 它们。
import geopandas as gpd
import ipywidgets
from IPython.display import HTML, display
df = gpd.read_file(gpd.datasets.get_path("naturalearth_lowres"))
out = ipywidgets.Output(layout={'border': '1px solid black'})
w = ipywidgets.Dropdown(
options=df.columns.values.tolist(),
value=df.columns.values[0],
description='Column:',
disabled=False,
)
def on_dropdown_change(change):
out.clear_output()
with out:
display(df.explore(w.value, cmap="Blues"))
w.observe(on_dropdown_change, names='value')
display(w)
with out:
display(df.explore(df.columns[0], cmap="Blues"))
out
例如,给定包含每个特定区域温度的不同月份列,我如何使用下拉菜单更改基于每个月的热图?我已经使用 geodataframe.explore(column = 'col_name').
构建了一张地图谢谢!
如果您在 jupyterlab 中工作,这非常简单!您可以组合一个 ipywidgets.Output
widget with a ipywidgets.Dropdown
来设置您的 canvas,然后使用输出捕获 folium 映射。然后,您需要通过添加事件处理程序来 link 它们。
import geopandas as gpd
import ipywidgets
from IPython.display import HTML, display
df = gpd.read_file(gpd.datasets.get_path("naturalearth_lowres"))
out = ipywidgets.Output(layout={'border': '1px solid black'})
w = ipywidgets.Dropdown(
options=df.columns.values.tolist(),
value=df.columns.values[0],
description='Column:',
disabled=False,
)
def on_dropdown_change(change):
out.clear_output()
with out:
display(df.explore(w.value, cmap="Blues"))
w.observe(on_dropdown_change, names='value')
display(w)
with out:
display(df.explore(df.columns[0], cmap="Blues"))
out