我尝试过很多东西,包括print(leafletMap),只是调用对象本身。是否有一个特定的函数,我要包装我的对象,以使其在文档中呈现?
答案 0 :(得分:2)
如果您使用Rstudio创建RMarkdown文件或RHMTL文件然后包含到这样的块代码中(您将需要包knitr转换为hmtl)
```{r setup, include=TRUE}
library(leaflet)
m<-leaflet() %>%
addTiles() %>% # Add default OpenStreetMap map tiles
addMarkers(lng=174.768, lat=-36.852, popup="The birthplace of R")
m
```
否则您可以像使用以下代码的html文档一样保存 喜欢这篇文章https://stackoverflow.com/a/31642030/7600734
中的建议library(htmlwidgets)
saveWidget(m, file="m.html")
答案 1 :(得分:1)
我已经在这里找到了解决这个问题的方法,感谢Jonathan:How to use objects from global environment in Rstudio Markdown
问题是R Markdown要求渲染的对象在代码块内生成,即每次编织文档时都会生成。 R Markdown的制作者故意这样做,以最大限度地提高报告的可重复性(我可以欣赏!)。每次编织新文档时都会创建并使用新的“不可见”环境,从而导致进程无法识别其他环境中的对象。
不幸的是,我的报告只是一个更大的分析的一小部分,而且从Rmd文件中完全运行代码太麻烦了。
解决方案:从命令行编织并保存文档。
rmarkdown::render("path/your_doc.Rmd")