提取.Rmd文件的html依赖项(包含htmlwidgets)

前端之家收集整理的这篇文章主要介绍了提取.Rmd文件的html依赖项(包含htmlwidgets)前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我怎样才能创建一个将.Rmd文件(包含htmlwidgets代码)作为输入的函数,并输出一个包含其JavaScript / CSS依赖项的html文件

具体来说,当渲染为html时,临时文件rmarkdown为pandoc的–include-in-header参数生成.

细节

示例 – myfile.Rmd:

This is some text

```{r}
library(dygraphs)
dygraph(nhtemp,main = "New Haven Temperatures")
```

运行rmarkdown :: render(‘myfile.Rmd’)将临时文件传递给–include-in-header pandoc参数,其中包含呈现交互式图形所需的所有JavaScript和CSS(压缩数据:uri格式或html链接)复制文件).这包含在最终的html文件中,因此所有内容都在浏览器中呈现.这是我希望能够生成的临时文件.

它似乎是通过将依赖项对象传递给内部函数rmarkdown ::: html_dependencies_as_string来输出的.我希望能够为包含htmlwidgets代码的任意.Rmd文档生成文件.

上下文

我对使用knitr和Jekyll的博客感兴趣,因为Yihui概述了here.但是,这种方法的缺点是没有htmlwidgets功能,因为dependency injection step is missed.这是因为pandoc由Ruby / Jekyll调用,所以没有受益于htmlwidgets / rmarkdown的无形魔法.我想在我的构建过程中添加一个函数,该函数将依赖项写入html文件,如果需要,可以将其包含在Jeykll的html标题中.

解决方法

这是一个可能的解决方http://benjcunningham.org/2016/06/13/hacking-together-htmlwidgets-for-jekyll.html,它指的是也提供解决方案的旧帖子: https://brendanrocks.com/htmlwidgets-knitr-jekyll/.

有点hacky.这个问题的官方解决方案仍未解决. yihui / knitr-jekyll:https://github.com/yihui/knitr-jekyll/issues/8有一个未决问题

猜你在找的HTML相关文章