使用传单库输出多个弹出值
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))
我正在使用一些数据生成在某些地方带有标记的地图,并使用弹出功能输出多个值。
我得到的数据来自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))