leaflet slider
Browse files
app.R
CHANGED
|
@@ -1,8 +1,12 @@
|
|
| 1 |
-
library(shiny)
|
| 2 |
-
library(
|
|
|
|
|
|
|
| 3 |
library(stars)
|
| 4 |
-
library(
|
| 5 |
-
|
|
|
|
|
|
|
| 6 |
|
| 7 |
before_fire_tifs <- fs::dir_ls("before_fire", type="file")[[1]]
|
| 8 |
after_fire_tifs <- fs::dir_ls("after_fire", type="file")[[1]]
|
|
@@ -11,19 +15,27 @@ after_fire_nbr <- read_stars(after_fire_tifs)
|
|
| 11 |
dnbr <- before_fire_nbr - after_fire_nbr
|
| 12 |
|
| 13 |
|
| 14 |
-
|
| 15 |
-
|
| 16 |
-
|
| 17 |
-
|
| 18 |
-
|
| 19 |
-
|
| 20 |
-
|
| 21 |
-
|
| 22 |
-
|
| 23 |
-
|
| 24 |
-
|
| 25 |
-
|
| 26 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 27 |
}
|
| 28 |
|
| 29 |
shinyApp(ui, server)
|
|
|
|
|
|
| 1 |
+
library(shiny) # for shiny apps
|
| 2 |
+
library(leaflet) # renderLeaflet function
|
| 3 |
+
library(spData) # loads the world dataset
|
| 4 |
+
library(terra)
|
| 5 |
library(stars)
|
| 6 |
+
library(leaflet.extras2)
|
| 7 |
+
ui = fluidPage(
|
| 8 |
+
leafletOutput(outputId = "map")
|
| 9 |
+
)
|
| 10 |
|
| 11 |
before_fire_tifs <- fs::dir_ls("before_fire", type="file")[[1]]
|
| 12 |
after_fire_tifs <- fs::dir_ls("after_fire", type="file")[[1]]
|
|
|
|
| 15 |
dnbr <- before_fire_nbr - after_fire_nbr
|
| 16 |
|
| 17 |
|
| 18 |
+
server = function(input, output) {
|
| 19 |
+
output$map = renderLeaflet({
|
| 20 |
+
#https://trafficonese.github.io/leaflet.extras2/reference/addSidebyside.html
|
| 21 |
+
|
| 22 |
+
# addRasterImage options requires pre-release leaflet....
|
| 23 |
+
stopifnot(compareVersion(as.character(packageVersion("leaflet")), "2.2.1") > 0)
|
| 24 |
+
|
| 25 |
+
Map <- leaflet() |>
|
| 26 |
+
addMapPane("right", zIndex = 0) |>
|
| 27 |
+
addMapPane("left", zIndex = 0) |>
|
| 28 |
+
addTiles(group = "base", layerId = "baseid1", options = pathOptions(pane = "right")) |>
|
| 29 |
+
addTiles(group = "base", layerId = "baseid2", options = pathOptions(pane = "left")) |>
|
| 30 |
+
addRasterImage(x = rast(after_fire_nbr), options = leafletOptions(pane = "right"), group = "r1") |>
|
| 31 |
+
addRasterImage(x = rast(before_fire_nbr), options = leafletOptions(pane = "left"), group = "r2") |>
|
| 32 |
+
addLayersControl(overlayGroups = c("r1", "r2")) |>
|
| 33 |
+
addSidebyside(layerId = "sidecontrols",
|
| 34 |
+
rightId = "baseid1",
|
| 35 |
+
leftId = "baseid2")
|
| 36 |
+
|
| 37 |
+
})
|
| 38 |
}
|
| 39 |
|
| 40 |
shinyApp(ui, server)
|
| 41 |
+
|