gpt4 book ai didi

将传单图渲染为 R 中的光栅?

转载 作者:行者123 更新时间:2023-12-04 12:33:04 25 4
gpt4 key购买 nike

我意识到这在很大程度上违背了使用交互式 leaflet 的目的。 map ,但我正在写一本传统的纸质书,我想展示 leaflet R 工作包。我正在用 LaTeX 写这本书并用 knitr 渲染.有没有办法拥有一个 leaflet将 map 渲染为光栅图像以便它可以包含在这本书中?

这是一个最小的例子:

library(leaflet)
map <- leaflet() %>%
addTiles() %>%
addMarkers(lng = -77.03673, lat = 38.89761)

现在,如果我尝试像这样的块:
<<>>=
map
@

我收到此错误:
Error in validateCssUnit(sizeInfo$width): "\maxwidth" is not a valid CSS unit
(e.g., "100%", "400px", "auto")

尝试另存为 PNG 也不起作用:
<<>>=
png(filename = "test.png")
map
dev.off()
@
map不继承自 ggplot ,所以 ggsave也不会工作。

有什么办法可以使这项工作?

最佳答案

最近在 How to save Leaflet in RStudio map as png or jpg file? 上有一个问题.如果您不介意安装 PhantomJS ,下面的代码应该可以帮助您从 创建静态图像传单 (或 map View ) map 。剩下要做的唯一一件事就是不显示 saveWidgetwebshot代码,而是导入并显示从中创建的 png 文件。

## install 'webshot' package
library(devtools)
install_github("wch/webshot")

## load packages
library(leaflet)
library(htmlwidgets)
library(webshot)

## create map
m <- leaflet() %>%
addTiles() %>%
addMarkers(lng = -77.03673, lat = 38.89761)

## save html to png
saveWidget(m, "leaflet_map.html", selfcontained = FALSE)
webshot("leaflet_map.html", file = "leaflet_map.png",
cliprect = "viewport")

## optionally display image when using knitr
# p <- knitr::include_graphics("leaflet_map.png")

这是一些用于演示目的的 LaTeX 输出。如果有人感兴趣,可以从 GitHub 获得完整的 .Rnw 源文件。 .

LaTeX

关于将传单图渲染为 R 中的光栅?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35527206/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com