我正在使用mapview R包构建地图本教程。使用popup=popupImage(images,src = "remote")
向每个点添加不同的图像可以正常工作。
问题出在 iframe 弹出窗口上。
使用 popup = mapview:::popupIframe("https://www.youtube.com/embed/iApz08Bh53w?autoplay=1", width = 300, height = 225)
的示例仅适用于单个点。如果我组合多个 iframe 视频链接(与图像链接显示的方式相同(会将所有视频 iframe 添加到每个点。
如何为每个点添加不同的 iframe?
下面是如何执行此操作的示例。
library(mapview)
# some example points
pts = breweries[1:2, ]
# some urls - note this cannot be a named list, javascript does not like names!
urls = list(
"https://www.youtube.com/embed/iApz08Bh53w?autoplay=1",
"https://www.youtube.com/embed/KEkrWRHCDQU?autoplay=1"
)
# create the popups
pop = lapply(urls, mapview:::popupIframe)
# et voila
mapview(pts, popup = pop)
popupIframe
函数目前没有矢量化,因此我们需要使用 lapply
在列表中创建弹出对象。