from ipyleaflet import Map, Marker, MarkerCluster, GeoJSON, GeoData
import geopandas
cities = geopandas.read_file("zip://./geopandas_cities.zip")
geojson = cities.__geo_interface__
geojson_layer = GeoJSON(
data=geojson,
point_style={
"radius": 5,
"color": "red",
"fillOpacity": 0.8,
"fillColor": "blue",
"weight": 3,
},
)
m = Map(center=(42.5, -41.6), zoom=2)
m.add(
MarkerCluster(
markers=[geojson_layer], # The layer must be in a list or tuple
disable_clustering_at_zoom=3,
max_cluster_radius=100,
)
)
m
# Its possible to mix markers and geojson layers
mrk = [Marker(location=geolocation.coords[0][::-1]) for geolocation in cities.geometry]
m = Map(center=(42.5, -41.6), zoom=2)
m.add(
MarkerCluster(
markers=[geojson_layer] + mrk,
disable_clustering_at_zoom=3,
max_cluster_radius=100,
)
)
m