Open paragemini opened 2 years ago
library(leaflet) library(leaflet.extras2) library(sf) library(htmlwidgets) ## Single Elements data <- sf::st_as_sf(leaflet::atlStorms2005[1:5,]) data$Name <- as.character(data$Name) data <- st_cast(data, "POINT") data$time <- unlist(lapply(rle(data$Name)$lengths, function(x) { seq.POSIXt(as.POSIXct(Sys.Date()-2), as.POSIXct(Sys.Date()), length.out = x) })) data$time <- as.POSIXct(data$time, origin="1970-01-01") data$label <- paste0("Time: ", data$time) data$popup = sprintf("<h3>Customized Popup</h3><b>Name</b>: %s<br><b>Time</b>: %s", data$Name, data$time) data <- split(data, f = data$Name) x <- leaflet() %>% addProviderTiles(providers[[113]]) %>% addPlayback(data = data, popup = ~popup, label = ~label, popupOptions = popupOptions(offset=c(0,-35)), labelOptions = labelOptions(noHide = TRUE), options = playbackOptions(radius = 3, tickLen = 1000000, speed = 5000, maxInterpolationTime = 10000, transitionpopup = FALSE, transitionlabel = FALSE, playCommand = "Let's go", stopCommand = "Stop it!", color = c("red","green","blue", "orange","yellow")), pathOpts = pathOptions(weight = 5)) saveWidget(x,"Circulations.html")