Spaces:
Sleeping
Sleeping
File size: 1,319 Bytes
5095fe6 f0d5d5d 8e0f60f eca7f1c 8e0f60f f0d5d5d 8e0f60f f0d5d5d 8e0f60f |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 |
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.")
|