Как я могу установить фильтр по месяцам на карте folium (проект Django)
Я использую folium и вижу перед собой карту folium с маркерами, я использую флажок, но поскольку у меня есть два месяца, я хочу добавить переключатель и выбрать только один месяц. Я хочу, чтобы были фильтры по месяцам, а также по статусам, но с разными надписями. Я использовал chatgpt, но это мне не помогло. Я также перепробовал много других способов.
Что вы предлагаете в качестве альтернативы?
Я пробовал это, но это не работает:
GroupedLayerControl(
groups={'groups1': [fg1, fg2]},
collapsed=False,
).add_to(m)
Мой код:
LayerControl в Folium поддерживает только флажки. Если вы хотите, чтобы переключатели работали (активны только один месяц), вам нужен GroupedLayerControl с exclusive_groups.
например:
from folium.plugins import GroupedLayerControl
jan = folium.FeatureGroup(name="January")
feb = folium.FeatureGroup(name="February")
jan.add_to(m)
feb.add_to(m)
GroupedLayerControl(
groups={"Month": [jan, feb], "Status": [critical, warning, moderate]},
exclusive_groups=["Month"],
collapsed=False,
).add_to(m)
Таким образом, месяцы действуют как переключатели, в то время как статусы остаются флажками.
Если вам нужна более продвинутая фильтрация, рассмотрите возможность использования фильтров GeoJSON + handling в виде простой брошюры на интерфейсе.