Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- library(tidyverse)
- library(leaflet)
- df <- data.frame(X = c(30.45, 30.66), Y = c(24.14, 25.23), id = c(1, 2),
- description = c("First point is here", "Second point is here"))
- server <- function(input, output) {
- data_of_click <- reactiveValues(clickedMarker=NULL)
- output$map <- renderLeaflet({
- leaflet() %>%
- addTiles(options = providerTileOptions(noWrap = TRUE)) %>%
- addCircleMarkers(data = df,
- lng = ~ X, lat = ~ Y, radius = 3,
- color = "black", fillColor = "red", stroke = F,
- fillOpacity = 0.5,
- layerId = df$id
- )
- })
- observeEvent(input$map_marker_click, {
- data_of_click$clickedMarker <- input$map_marker_click
- })
- output$text <- renderText({
- if (is.null(data_of_click$clickedMarker)) {
- return(NULL)
- }
- return(
- paste0(df$description,
- id == data_of_click$clickedMarker$id
- )
- )
- })
- }
- ui <- fluidPage(
- br(),
- column(8, leafletOutput("map", height = "600px")),
- column(4, br(), br(), br(), br(), textOutput("text")),
- br()
- )
- shinyApp(ui = ui, server = server)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement