Spaces:
Sleeping
Sleeping
| import random | |
| import pandas as pd | |
| import streamlit as st | |
| import pydeck as pdk | |
| from datetime import datetime, timedelta | |
| # Map with Alert Level Color Coding | |
| st.subheader("📍 Pole Alert Levels (Green, Yellow, Red)") | |
| # Define color mapping | |
| def alert_level_to_color(alert_level): | |
| if alert_level == 'Red': | |
| return [255, 0, 0, 160] # Red | |
| elif alert_level == 'Yellow': | |
| return [255, 255, 0, 160] # Yellow | |
| else: | |
| return [0, 255, 0, 160] # Green | |
| # Only if site_df is available | |
| if not site_df.empty: | |
| site_df = site_df.copy() # To avoid SettingWithCopyWarning | |
| site_df['Color'] = site_df['Alert Level'].apply(alert_level_to_color) | |
| st.pydeck_chart(pdk.Deck( | |
| initial_view_state=pdk.ViewState( | |
| latitude=SITES[selected_site][0], | |
| longitude=SITES[selected_site][1], | |
| zoom=12, | |
| pitch=50 | |
| ), | |
| layers=[ | |
| pdk.Layer( | |
| 'ScatterplotLayer', | |
| data=site_df, | |
| get_position='[Longitude, Latitude]', | |
| get_color='Color', | |
| get_radius=100, | |
| ) | |
| ] | |
| )) | |
| st.markdown("<h3 style='text-align: center;'>Poles Color-coded by Alert Level</h3>", unsafe_allow_html=True) | |
| else: | |
| st.info("No poles data available for this site.") | |