Sam*_*Sam 5 r click leaflet shiny
是否可以从tile图中的clicklet/shiny(在R中)中单击事件获取lat long?(即不是来自任何加载的标记,多边形等).只是为了显示我猜的位置(纬度/经度)信息.
我想也许从这个问题可能但没有运气.
ui <- bootstrapPage(
tags$style(type = "text/css", "html, body {width:100%;height:100%}"),
leafletOutput("map", width = "100%", height = "100%")
)
server <- function(input, output,session) {
output$map <- renderLeaflet({
leaflet() %>%
addProviderTiles("CartoDB.Positron")%>%
setView(lng = -4, lat= 52.54, zoom = 7)
})
#Show popup on click
observeEvent(input$map_marker_click, {
click <- input$map_marker_click
text<-paste("Lattitude ", click$lat, "Longtitude ", click$lng)
proxy <- leafletProxy("map")
proxy %>% clearPopups() %>%
addPopups(click$lng, click$lat, text)
})
}
runApp(shinyApp(ui, server), launch.browser = TRUE)
Run Code Online (Sandbox Code Playgroud)
最终我想在Leaflet&Shiny中为栅格数据创建一个点击标记(使用返回的纬度/长度),但这将是一个良好的开端(他的qu似乎做了一些事情,但我根本无法再创建它).
我已经修改了你的代码。请检查这是否是您想要的?
library(shiny)
library(leaflet)
ui <- bootstrapPage(
tags$style(type = "text/css", "html, body {width:100%;height:100%}"),
leafletOutput("map", width = "100%", height = "100%")
)
server <- function(input, output, session) {
output$map <- renderLeaflet({
leaflet() %>%
addProviderTiles("CartoDB.Positron") %>%
setView(lng = -4, lat = 52.54, zoom = 7) %>%
addTiles(layerId = "map_click")
})
observeEvent(input$map_click, {
click <- input$map_click
lat <- click$lat
lng <- click$lng
proxy <- leafletProxy("map")
proxy %>% clearPopups() %>%
addPopups(lng, lat, paste("Latitude:", lat, "Longitude:", lng))
print(paste("Click coordinates:", lat, lng))
})
}
shinyApp(ui, server)
Run Code Online (Sandbox Code Playgroud)
在应用程序上,单击地图上的任意位置后,您会看到如下内容:
归档时间: |
|
查看次数: |
3659 次 |
最近记录: |