R语言 将夸托渲染为HTML,指定缺少绘图和样式的输出位置

s1ag04yj  于 2023-02-14  发布在  其他
关注(0)|答案(1)|浏览(569)

我正在尝试将.qmd文件渲染为HTML并指定一个输出文件。我是从MacOS 12.6上的RStudio中的Quarto项目编译它的。我在YAML头文件中也有一个引导主题。

---
title: "quarto_output_experiment"
format:
  html:
    theme: journal
---

如果我使用RStudio中的Cmd + Shift + K渲染它,HTML文档会出现在.qmd所在的目录中,看起来很好。但是如果我使用Quarto CLI指定输出目录(一个名为output的文件夹)渲染它,HTML就不能渲染绘图,并且缺少任何格式和样式。
quarto render quarto_output_experiment.qmd --output output/report.html
这是结果。
| 这是从RStudio渲染时的情况|这是通过Quarto CLI渲染时的情况|
| - ------|- ------|
|

|

|
我错过了什么?我怎样才能在不同的目录中呈现HTML,并有情节和适当的风格?
作为参考,这是文档本身

---
title: "quarto_output_experiment"
format:
  html:
    theme: journal
---

## Quarto

Quarto enables you to weave together content and executable code into a finished document.
To learn more about Quarto see <https://quarto.org>.

```{r}
1 + 1

Lorem ipsum

library(ggplot2)
ggplot(data.frame(x = rnorm(100)), aes(x)) + geom_density()

### 更新

指定`--output-dir`而不是`--output`会生成一个带有绘图和样式的文档,但问题仍然存在,是否有一种方法可以更改输出HTML文件的名称?可能不是关键任务,但我仍然很好奇。
qij5mzcb

qij5mzcb1#

这是一个非常奇怪的bug,它似乎与路径有关(参见here。通常,您可以像这样使用quarto::render_quarto()

quarto::quarto_render(input = "quarto_output_experiment.qmd", output_file = "report.html")

这是可行的,但当您添加文件夹名称时

quarto::quarto_render(input = "quarto_output_experiment.qmd", output_file = "results/report.html")

它不再工作了。问题是存储库和图像的文件夹(quarto_output_experiment_files)也不会自动放置在输出文件所在的位置。
我会提交一个问题here
目前一个可能的解决方案是self-contained参数,它产生自包含的html文件,例如。

---
title: "quarto_output_experiment"
format:
  html:
    theme: journal
    self-contained: true  
---

那么您可以使用file.copy将该文件移动到正确的文件夹中。

编辑:选项self-contained已折旧,请使用embed-resources!链接

相关问题