我怎样才能让 Rchunks 在 tcolorbox 内进行渲染?

我怎样才能让 Rchunks 在 tcolorbox 内进行渲染?

我已经创建了一个 reprex 来展示我的问题,但是我在制作的自定义 Rmd 模板中遇到了同样的问题。

我希望能够在 tcolorbox 环境中包含风格化的代码块和绘图输出。出于某种原因。当我编织 Rmarkdown 时,它不会渲染 tcolorbox 环境。

这是我的 reprex .RMD:

---
title: "Untitled"
output: 
  pdf_document:
    extra_dependencies: ["tcolorbox", "tikz"]
---
```{r, include=FALSE}
library(tidyverse)
```

\begin{tcolorbox}
```{r,results='asis', eval=F}
iris %>% 
  group_by(Species) %>% 
  summarise(mean = mean(Sepal.Length), 
            sd = sd(Sepal.Width))
```

```{r,results='asis'}
ggplot(iris, aes(Sepal.Length, Sepal.Width, colors = Species)) + 
  geom_point()
```
\end{tcolorbox}

最终的 .pdf 版本如下:

在此处输入图片描述

当我移除 Rchunks 时,tcolorbox 可以正确渲染。我打开了中间的 .tex 文件来查看发生了什么,看起来它正在用\textbackslash{}

\textbackslash{}begin\{tcolorbox\}

\begin{Shaded}
\begin{Highlighting}[]
\NormalTok{iris }\OperatorTok{%>%}\StringTok{ }
\StringTok{  }\KeywordTok{group_by}\NormalTok{(Species) }\OperatorTok{%>%}\StringTok{ }
\StringTok{  }\KeywordTok{summarise}\NormalTok{(}\DataTypeTok{mean =} \KeywordTok{mean}\NormalTok{(Sepal.Length), }
            \DataTypeTok{sd =} \KeywordTok{sd}\NormalTok{(Sepal.Width))}
\end{Highlighting}
\end{Shaded}

\begin{Shaded}
\begin{Highlighting}[]
\KeywordTok{ggplot}\NormalTok{(iris, }\KeywordTok{aes}\NormalTok{(Sepal.Length, Sepal.Width, }\DataTypeTok{colors =}\NormalTok{ Species)) }\OperatorTok{+}\StringTok{ }
\StringTok{  }\KeywordTok{geom_point}\NormalTok{()}
\end{Highlighting}
\end{Shaded}

\includegraphics{Untitled1_files/figure-latex/unnamed-chunk-3-1.pdf}
\textbackslash{}end\{tcolorbox\}

如果没有 Rchunks,它看起来很好:

\begin{tcolorbox}

\end{tcolorbox}

答案1

只需进行以下更改:

\begin{tcolorbox}\tcolorbox

\end{tcolorbox}\endtcolorbox

姆韦

相关内容