modify storm track colors and add legend

This commit is contained in:
2025-07-20 20:43:29 -04:00
parent 7232368784
commit f8c2b1b194
+42 -21
View File
@@ -325,7 +325,7 @@ storm_track <- reactive({
hurricane_category == 5 ~ "#FFFFFF", hurricane_category == 5 ~ "#FFFFFF",
# Extratropical Cyclone # Extratropical Cyclone
storm_status == "EX" ~ "#000000", storm_status == "EX" ~ "#202020",
# Subtropical Depression # Subtropical Depression
storm_status == "SD" ~ "#0055FF", storm_status == "SD" ~ "#0055FF",
@@ -334,30 +334,16 @@ storm_track <- reactive({
storm_status == "SS" ~ "#6CE2FF", storm_status == "SS" ~ "#6CE2FF",
# Low # Low
storm_status == "LO" ~ "#2AFF00", storm_status == "LO" ~ "#A1A1A1",
# Wave # Wave
storm_status == "WV" ~ "#2AFF00", storm_status == "WV" ~ "#A1A1A1",
# Disturbance # Disturbance
storm_status == "DB" ~ "#2AFF00", storm_status == "DB" ~ "#A1A1A1",
# Missing # Missing
TRUE ~ "#CCCCCC" TRUE ~ "#FF5C00"
),
line_stroke = case_when(
# Add dashed lines for certain storm_status
storm_status == "TD" ~ "0",
storm_status == "TS" ~ "0",
storm_status == "HU" ~ "0",
storm_status == "EX" ~ "0",
storm_status == "SD" ~ "0",
storm_status == "SS" ~ "0",
storm_status == "LO" ~ "5,5",
storm_status == "WV" ~ "5,5",
storm_status == "DB" ~ "5,5",
TRUE ~ "0"
), ),
popup_category = case_when( popup_category = case_when(
storm_status == "TD" ~ "TD", storm_status == "TD" ~ "TD",
@@ -391,9 +377,45 @@ output$track_map <- renderLeaflet({
lng1 = min(track_data$lon), lng1 = min(track_data$lon),
lng2 = max(track_data$lon), lng2 = max(track_data$lon),
lat1 = min(track_data$lat), lat1 = min(track_data$lat),
lat2 = max(track_data$lat), lat2 = max(track_data$lat)
) )
map <- map %>%
leaflet::addLegend(
position = "bottomleft",
colors = c(
"#2AFF00", # TD
"#FFD020", # TS
"#FF4343", # Cat 1
"#FF6FFF", # Cat 2
"#FF23D3", # Cat 3
"#C916FF", # Cat 4
"#FFFFFF", # Cat 5
"#202020", # EX
"#0055FF", # SD
"#6CE2FF", # SS
"#A1A1A1", # LO/WV/DB
"#FF5C00" # Missing
),
labels = c(
"Tropical Depression (TD)",
"Tropical Storm (TS)",
"Hurricane Category 1",
"Hurricane Category 2",
"Hurricane Category 3",
"Hurricane Category 4",
"Hurricane Category 5",
"Extratropical Cyclone (EX)",
"Subtropical Depression (SD)",
"Subtropical Storm (SS)",
"Low/Wave/Disturbance (LO/WV/DB)",
"Missing Data"
),
opacity = 1,
title = "Track Legend"
)
if (nrow(track_data) >= 2) { if (nrow(track_data) >= 2) {
for (i in 1:(nrow(track_data) - 1)) { for (i in 1:(nrow(track_data) - 1)) {
segment_data <- track_data[i:(i+1), ] segment_data <- track_data[i:(i+1), ]
@@ -405,7 +427,6 @@ output$track_map <- renderLeaflet({
lat = ~lat, lat = ~lat,
weight = 2, weight = 2,
color = track_data$line_color[i], color = track_data$line_color[i],
dashArray = track_data$line_stroke[i],
opacity = 1 opacity = 1
) )
} }