Spaces:
Sleeping
Sleeping
| import plotly.express as px | |
| import streamlit as st | |
| import pandas as pd | |
| def render_site_map(df, site_name): | |
| site_df = df[df['site'] == site_name].head(10) # show 10 poles only | |
| # Determine color | |
| def get_color(faults): | |
| if faults == 0: | |
| return 'green' | |
| elif faults == 1: | |
| return 'yellow' | |
| else: | |
| return 'red' | |
| site_df['color'] = site_df['faults'].apply(get_color) | |
| fig = px.scatter_mapbox( | |
| site_df, | |
| lat="latitude", | |
| lon="longitude", | |
| hover_name="id", | |
| color="color", | |
| color_discrete_map={"green": "green", "yellow": "yellow", "red": "red"}, | |
| zoom=10, | |
| height=300 | |
| ) | |
| fig.update_layout(mapbox_style="open-street-map") | |
| fig.update_traces(marker=dict(size=14)) | |
| fig.update_layout(margin={"r":0,"t":0,"l":0,"b":0}) | |
| st.plotly_chart(fig, use_container_width=True, key=site_name) | |