每天我需要在地图上画出路径,并添加一个文本,如4、5或8分钟,表示从起点到终点需要多长时间(如下图所示)。我认为使用 Leaflet 在 R 中创建一个 Shiny 应用程序会很有帮助(代码如下所示)。
我使用 leaflet.extras 包中的 addDrawToolbar 来绘制路径,如附图所示。但是我不知道如何像我绘制路径一样添加文本。解决方案不一定需要在 R 中实现。我的目标是为那些想做这些事情但不知道如何编码的人创建一个应用程序。
我使用 leaflet.extras 包中的 addDrawToolbar 来绘制路径,如附图所示。但是我不知道如何像我绘制路径一样添加文本。解决方案不一定需要在 R 中实现。我的目标是为那些想做这些事情但不知道如何编码的人创建一个应用程序。
library(shiny)
library(leaflet)
library(leaflet.extras)
ui = fluidPage(
tags$style(type = "text/css", "#map {height: calc(100vh - 20px)
!important;}"),
leafletOutput("map")
)
server = function(input,output,session){
output$map = renderLeaflet(
leaflet()%>%
addTiles(urlTemplate = "http://mt0.google.com/vt/lyrs=m&hl=en&x=
{x}&y={y}&z={z}&s=Ga")%>%
addMeasure(
primaryLengthUnit = "kilometers",
secondaryAreaUnit = FALSE
)%>%
addDrawToolbar(
targetGroup='draw',
editOptions = editToolbarOptions(selectedPathOptions =
selectedPathOptions()),
polylineOptions = filterNULL(list(shapeOptions =
drawShapeOptions(lineJoin = "round", weight = 8))),
circleOptions = filterNULL(list(shapeOptions =
drawShapeOptions(),
repeatMode = F,
showRadius = T,
metric = T,
feet = F,
nautic = F))) %>%
setView(lat = 45, lng = 9, zoom = 3) %>%
addStyleEditor(position = "bottomleft",
openOnLeafletDraw = TRUE)
)
}
shinyApp(ui,server)