Группирование (кластеризация) маркеров Folium (Python)

В файле POI.csv находятся названия точек, долгота, широта, радиус и секторы входа (в градусах), которые отображаются на карте графически.

import folium
from folium import plugins
from folium.plugins import MarkerCluster
import pandas as pd
from turtle import color, fillcolor
input_poi = 'POI.csv'
poi = pd.read_csv(input_poi)
place_poi = poi['name']
lat = poi['latitude']
lon = poi['longitude']
rad_poi = poi['radius']
start_poi = poi['from']
stop_poi = poi['until']

poi.head(6)
m = folium.Map()
cluster = MarkerCluster().add_to(m)
city = folium.map.FeatureGroup()
for lat, lon, rad_poi, start_poi, stop_poi, place_poi in zip(lat, lon, rad_poi, start_poi, stop_poi, place_poi):
    if start_poi > stop_poi:
        start_poi -= 360
    city.add_child (
        plugins.SemiCircle(
            location = [lat, lon],
            radius = rad_poi,
            start_angle = start_poi,
            stop_angle = stop_poi,
            fill_color = 'red',
        )
    )
    city.add_child (
        folium.Marker(
                location = [lat, lon],
                tooltip = place_poi
        )
    )
m.add_child(city)

Из-за большого количества точек (больше 3500) необходимо добавить кластеризацию в которой и есть проблема - если добавить отдельно plugins.SemiCircle и folium.Marker в MarkerCluster, то количество значений на карте удваивается и каждая точка считает отдельно маркер точки и отдельно маркер круга. Можно ли добавить сгруппированные "city" в плагин MarkerCluster?


Ответы (0 шт):