是否有办法在打开html输出时动态加载与Rmarkdown相关的数据和通过Rmarkdown生成的html输出文件(例如通过javascript或ajax)?
例如,我有一个简单的Rmarkdown文件,它生成一个图(在svg中)和一个表:
---
title: "test"
output:
html_document:
self_contained: false
---
```{r setup, include=FALSE}knitr::opts_chunk$set(dev = "svglite",fig.ext = ".svg")
图书馆(Svglite)
图书馆(DT)
```{r, echo=FALSE}数据<- data.frame(a = 1:5,b= 6:10)
地块(数据)
数据表(数据)
是否有一种方法可以将数据提供给html文件,以便当数据更改(我再次打开它)时,可以自动更新绘图和表,而不必呈现Rmarkdown脚本?
发布于 2022-01-29 21:48:15
是的,这是可能的。您可以使用本地数据或存储在某处的数据--比如Google。
步骤1)将runtime: shiny添加到YAML中。这并不能使它变得“闪亮”,而是使它充满活力。
更新的YAML:
---
title: "test"
output:
html_document:
self_contained: false
runtime: shiny
---第二步)使用函数调用数据。
```{r giveMe,echo=F}giveMeData <- function(){
Read.csv(“././_data/carData.csv”)
}
dataGiven <- giveMeData()
无论是在RStudio中的查看器窗格中还是在浏览器中,您只需要在更新数据后刷新视图或页面。
要测试这一点,我使用的唯一其他代码如下:
<!--- inline R code to show the data --->
The column names are `r names(dataGiven)`.
There are `r nrow(dataGiven)` observations in this data.
```{r itsGiven, echo=FALSE}绘制数据
地块(DataGiven)
数据表(DataGiven)

我将列名更改为“置换”并刷新(不是重新运行、运行、编织、刷新)。

https://stackoverflow.com/questions/70852352
复制相似问题