Bookdown不会在输出pdf中呈现图像

时间:2019-10-15 15:31:53

标签: r r-markdown knitr bookdown tinytex

我试图在RStudio的bookdown-package附带的示例index.rmd文件中包含一个图像。 (新建项目->使用预订的图书项目) 然后,我简单地将以下代码附加到R代码块中。

```{r} 
knitr::include_graphics("png_logo.png")
```

单独运行代码块会产生预期的输出(如图所示)。 但是,如果我在终端中使用以下命令: bookdown::render_book("index.Rmd", "bookdown::pdf_book") 会生成一个pdf文件,其中不包含图片,而是空白。

我打开了一个空白的.rmd文件,粘贴了代码块,然后使用编织按钮进行了检查,这是否是一个全局问题。但是,编织测试文件会生成expected output

---
title: "Untitled"
output:
  pdf_document: default
---
# simple test file

```{r}
knitr::include_graphics("png_logo.png")
```

这使我相信,这是与书本有关的问题。 包括相应的LaTeX代码\includegraphics{png_logo.png},在书本创建的pdf中产生了相同的空白,但与编织的.rmd文件兼容。

我在SO(knitr::include_graphics in bookdown, is not rendering the image)上发现了类似的问题,并确保文件名和文件路径均不包含空格。 TinyTex和tinytex软件包已安装。没有安装其他LaTeX发行版(尽管以前已安装MikTeX)。

我们将不胜感激!

编辑:

在另一台计算机上尝试bookdown::render_book("index.Rmd", "bookdown::pdf_book")命令也无法渲染图像。

我尝试了bookdown::render_book("index.Rmd", "bookdown::gitbook")bookdown::render_book("index.Rmd", "bookdown::pdf_document2") 两者都产生了预期的输出。

但是,使用任何一种解决方法都不适用于我的用例,因为我试图使用由同事生成的报告模板。因此,我的目标是获得bookdown::render_book("index.Rmd", "bookdown::pdf_book") 运行。帮助将不胜感激!

1 个答案:

答案 0 :(得分:0)

我遇到了同样的问题。一种解决方案终于奏效了:将plt.figure() plt.xlabel('C values') plt.ylabel('Accuracy') plt.scatter(C_values, svc_acc_scores) plt.xticks([0, 0.001, 0.01, 0.1, 1, 10, 100, 1000]) 更改为latex_engine,而不是pdflatex。在xelatex文件中。

_output.yml

编辑:似乎bookdown::pdf_book: latex_engine: pdflatex 需要更新,运行

后现在可以再次使用
xelatex