Zeel's picture
Added Ahmedabad. Added counts
572ad66
raw
history blame
1.79 kB
from os.path import join
import leafmap.foliumap as leafmap
import streamlit as st
import geopandas as gpd
file_map = {"Ahmedabad 10 km buffer": "ahmedabad_10km_buffer.geojson",
"Lucknow 80x80 km": "lucknow_airshed.geojson",
"Delhi 80x80 km": "delhi_airshed.geojson",
"West Bengal 20x20 km": "wb_small_airshed.geojson",
}
st.title("Brick Kilns Interactive Map")
region = st.selectbox("Select a region", list(file_map.keys()))
def style_function(feature):
class_name = feature['properties']['class_name']
if class_name == "Zigzag":
return {'color': 'green', 'weight': 3, 'fillColor': 'green', 'fillOpacity': 0}
elif class_name == "FCBK":
return {'color': 'orange', 'weight': 3, 'fillColor': 'orange', 'fillOpacity': 0}
elif class_name == "CFCBK":
return {'color': 'red', 'weight': 3, 'fillColor': 'red', 'fillOpacity': 0}
else:
return {'color': 'black', 'weight': 3, 'fillColor': 'black', 'fillOpacity': 0}
gdf = gpd.read_file(join("labels", file_map[region]))
# fill the horizontal space with table
mapping = {"CFCBK": "Circular Fixed Chimney Bull's Trench Kiln (CFCBK)",
"FCBK": "Fixed Chimney Bull's Trench Kiln (FCBK)",
"Zigzag": "Zigzag Kiln"}
gdf['class_name'] = gdf['class_name'].apply(lambda x: mapping[x])
st.write(gdf['class_name'].value_counts())
m = leafmap.Map()
m.add_basemap("SATELLITE")
legend_dict = {"CFCBK": "red", "FCBK": "orange", "Zigzag": "green", "Region of Interest": "blue"}
m.add_geojson(join("shapes", file_map[region]), layer_name="Region of Interest")
m.add_geojson(join("labels", file_map[region]), style_function=style_function, layer_name="Kilns")
m.add_legend(legend_dict=legend_dict, title="Brick Kilns")
m.to_streamlit()