from ipyleaflet import Map, Marker, Choropleth, ColormapControl, AwesomeIcon, basemaps, basemap_to_tiles
import json
import pandas as pd
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,)
)
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,)
layer2 = basemap_to_tiles(basemaps.Esri.WorldStreetMap, subitems= ())
icon1 = AwesomeIcon(
name='gear',
marker_color='blue',
icon_color='darkblue',
spin=False
)
marker2 = Marker(icon=icon1, location=(center[0], center[1] - 4))
layer2.subitems = layer2.subitems+(marker2,)
m1.add(layer1)
m1.add(layer2)