【问题标题】:Pandoc for generating html file not using RStudioPandoc 用于生成不使用 RStudio 的 html 文件
【发布时间】:2016-06-26 09:39:54
【问题描述】:

我想通过下面的脚本生成 html 文件,该脚本是复杂源代码的一部分,但我不想在用户机器上安装 RStudio。

我使用的 pandoc 位于:pandoc from github,并且此 pandoc 文件的路径参考用于 Sys.setenv:“C:/Users/username/AppData/Local/Pandoc”。

如果我在 Sys.setenv 命令中使用 RSTUDIO_PANDOC,则在下面的脚本中一切正常,但如果 Sys.setenv 命令中的 RSTUDIO_PANDOC 使用我不想使用的默认 RStudio pandoc 文件,我会感到困惑。 RSTUDIO_PANDOC 是否有任何替代品,以确保我不需要在用户的机器上安装 RStudio,我只能参考我从上面的链接下载的 pandoc 文件。

Sys.setenv(RSTUDIO_PANDOC="C:/Users/username/AppData/Local/Pandoc")
setwd("C:/Users/username/interactiveKnitr") # set path to .Rmd file
knit('knit.Rmd') # creates md file
render('knit.Rmd') # creates html file

非常感谢您对此的任何解释和帮助。我是这个领域的新手。

【问题讨论】:

  • 你试过knitr::pandoc吗?
  • 是的,我试过了。这会生成 html 但没有 plot_ly 的东西并且格式不正确。这就是我使用 knit 并渲染到 .Rmd 文件的原因。

标签: r rstudio knitr pandoc


【解决方案1】:

您可以在 R 中使用包 pander 形式。尽管如此,我通常更喜欢自己安装 pandoc 并在需要从 R 中运行所有内容时使用系统调用。

knit (input = "file.Rmd", output = "file.md")
system ("pandoc file.md")

然后更容易调整pandoc 参数并确保运行已安装的版本。如果您想创建文档的 texpdf 版本,它也会让事情变得更容易。

【讨论】:

  • 你还需要使用Sys.setenv(RSTUDIO_PANDOC="C:/Users/username/AppData/Local/Pandoc")吗?
  • 我不这么认为。事实上,我在 Rstudio 之外使用它(也来自 R 工作室)。对knitr 的调用仅取决于knitr 参数,对系统的调用不应受Rstudio 参数的影响......但我想你可以确保你使用的pandoc 版本在你的系统调用中设置完整路径system ("C:/User..../pandoc file.md")
  • 我不知道如何测试这个,因为我不想从我的电脑上卸载 RStudio :-)
  • 在 Rstudio 外运行 R。如果您在 Windows 中,您可以使用标准 R 界面或使用 DOS shell 的批处理模式。见这里statmethods.net/interface/batch.html。用任何编辑器(例如 Rstudio)编写您的 file.Rmd 将其按原样保存(文本文件),然后关闭 Rstudio 并在没有它的情况下打开 R。记得加载 knitr 包。
猜你喜欢
  • 1970-01-01
  • 2016-07-10
  • 2016-02-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-01-09
  • 1970-01-01
相关资源
最近更新 更多