Ответ 1
Это очень приятное обходное решение появилось в ответ на вопрос, заданный чуть позже здесь на SO. Обратите внимание, что вам необходимо установить PhantomJS, чтобы получить следующий код для работы.
## install 'webshot' package
library(devtools)
install_github("wch/webshot")
## load packages
library(leaflet)
library(htmlwidgets)
library(webshot)
## create map
m <- leaflet() %>% addTiles()
## save html to png
saveWidget(m, "temp.html", selfcontained = FALSE)
webshot("temp.html", file = "Rplot.png",
cliprect = "viewport")
И вот получившееся изображение.
Обновление:
Теперь, когда webshot был официально выпущен на CRAN и с введением mapshot
в пакете mapview, это временное решение вручную больше не требуется. Теперь код просто выглядит следующим образом:
library(mapview)
## 'leaflet' objects (image above)
m <- leaflet() %>% addTiles()
mapshot(m, file = "~/Rplot.png")
## 'mapview' objects (image below)
m2 <- mapview(breweries91)
mapshot(m2, file = "~/breweries.png")