使用传单库输出多个弹出值

using leaflet library to output multiple popup values

我正在使用一些数据生成在某些地方带有标记的地图,并使用弹出功能输出多个值。

我得到的数据来自sql,下面是相关代码:

con <- odbcConnect("data", uid = "user", pwd = "password")
area <- sqlQuery(con, "EXEC sp")

area变量包含11行6列。这 6 列是:Region(文本)、Employed(整数)、Retired(整数)、employed(整数)、Longitude(整数)和 Latitude(整数)。

我正在使用传单库使用经度和纬度在地图上标记点。其他我希望在用户单击地图上的相关点时显示为弹出窗口。

关于我如何生成地图和点的代码以及每个点的弹出窗口。

m <- leaflet() %>%
  addTiles() %>%  # Add default OpenStreetMap map tiles
  addMarkers(lng=area$Longitude, lat=area$Latitude, popup=area$Region)

以上功能有效,并向我显示了地图上具有正确区域名称的弹出式输出。但如果我尝试将弹出窗口更改为多列,地图会显示点,但当我单击它时它没有响应我。

谁能告诉我如何在弹出窗口中输出多个值。

像这样:

m <- leaflet() %>%
  addTiles() %>%  # Add default OpenStreetMap map tiles
  addMarkers(lng=area$Longitude, lat=area$Latitude, popup=c(area$Region, area$Employed, area$Retired, area$Unemployed))

注意:我希望点击该点时弹窗显示如下:

Region Name
Employed: 559
Retired: 400
Unemployed: 300

如果你不明白我的意思,请提问,因为我还在掌握R的知识。

我在 rstudio 上做这个

您应该使用 paste() 而不是 c()。您可以使用 HTML 换行符来获取多行。试试这个未经测试的代码:

m <- leaflet() %>%
  addTiles() %>%  # Add default OpenStreetMap map tiles
  addMarkers(lng = area$Longitude, lat = area$Latitude,
             popup = paste("Region", area$Region, "<br>",
                           "Employed:", area$Employed, "<br>",
                           "Retired:", area$Retired, "<br>",
                           "Unemployed:", area$Unemployed))