from ipyleaflet import Map, Marker, Choropleth, MagnifyingGlass, ColormapControl, AwesomeIcon, basemaps, basemap_to_tiles
import json
import pandas as pd
from ipywidgets import link, FloatSlider
from branca.colormap import linear
center = (43, -100)
zoom = 4
geo_json_data = json.load(open("us-states.json"))
m1 = Map(center=center, zoom=zoom)
unemployment = pd.read_csv("US_Unemployment_Oct2012.csv")
unemployment = dict(
zip(unemployment["State"].tolist(), unemployment["Unemployment"].tolist())
)
marker1 = Marker(location=(center))
layer1 = Choropleth(
geo_data=geo_json_data,
choro_data=unemployment,
colormap=linear.YlOrRd_04,
style={"fillOpacity": 0.8, "dashArray": "5, 5"},
subitems= (marker1,)
)
m1.add(layer1)
m1
m1.remove(layer1)
m1
m1.add(layer1)
colormap_control1 = ColormapControl(
caption='Unemployment rate',
colormap=layer1.colormap,
value_min=layer1.value_min,
value_max=layer1.value_max,
position='topright',
transparent_bg=True
)
layer1.subitems = layer1.subitems+(colormap_control1,)
m1
marker2 = Marker(location=(center[0]-4, center[1] - 4))
marker3 = Marker(location=(center[0]-8, center[1] - 8))
layer2 = basemap_to_tiles(basemaps.Strava.Water, subitems= (marker2,))
icon1 = AwesomeIcon(
name='gear',
marker_color='blue',
icon_color='darkblue',
spin=True
)
marker4 = Marker(icon=icon1, location=(center[0], center[1] - 4))
layer2.subitems = layer2.subitems+(marker3, marker4)
m1.add(layer2)
m1
m1.remove(layer1)
m1
m1.remove(layer2)