【发布时间】:2020-07-19 06:32:31
【问题描述】:
我正在使用 Leaflet 地图创建一个闪亮的应用程序。它上面绘制了数千个小圆圈,圆圈的颜色讲述了一个故事。缩小时,圆圈保持较小(权重=1),因此它们重叠较少。然而,当用户放大时,小圆圈变得难以看到。我希望根据缩放级别增加圆圈的大小。我知道有一个input$MAPID_zoom 功能可以将缩放级别作为整数返回。
以下是一些可重现的代码,它将德克萨斯州达拉斯的 15 个随机点绘制到一张传单地图上,缩放设置为 6。当缩放级别增加到 8 时,我将如何将圆圈的权重从 1 更改为 2 , 放大到 10 时从 2 变为 3?
我在网上看到了一些讨论,但没有什么对我有用。请参阅下面的代码。提前致谢。
## app.R ##
library(leaflet)
ui <- dashboardPage(
dashboardHeader(title = "Basic dashboard"),
dashboardSidebar(),
dashboardBody(
leafletOutput("Map", width = "100%", height = "500px")
)
)
server <- function(input, output) {
df <- data.frame("Lat"=c(32.921821,32.910853,32.793803,32.995084,32.683745,32.759999,32.800652,32.958861,32.835963,32.762578,32.649651,32.862843,32.862217,32.936876,32.963381),
"Long"=c(-96.840609,-96.738831,-96.689232,-96.857858,-96.825345,-96.684475,-96.794144,-96.816111,-96.676371,-96.897331,-96.944426,-96.754719,-96.856976,-96.752718,-96.770249))
output$Map <- renderLeaflet({
leaflet(df) %>%
addTiles(urlTemplate = "//{s}.tiles.mapbox.com/v3/jcheng.map-5ebohr46/{z}/{x}/{y}.png",
attribution = 'Maps by <a href="http://www.mapbox.com/">Mapbox</a>') %>%
setView(lng = -96.84, lat = 32.92, zoom = 6) %>%
addCircles(lng = ~Long, lat = ~Lat, weight = 1,
opacity = 1, fill = TRUE, fillOpacity = 1 )
})
}
shinyApp(ui, server)
【问题讨论】: