我有一种情况,出于显示目的,我需要将输出图包装在 <div>
中。容器。
在最基本的层面上,这是我想做的:
```{r fig.width=7, fig.height=6,results='asis',echo=FALSE}
cat('<div>')
plot(cars)
cat('</div>')
```
但是,输出文档如下所示:
![plot of chunk unnamed-chunk-2](figure/unnamed-chunk-2.png)
如果您需要“包装”输出,是否有解决方法?
同样的行为似乎只在包装情节时才会发生。否则,包括封闭标签将按预期工作:
```{r fig.width=7, fig.height=6,results='asis',echo=FALSE}
cat('<div>')
cat('</div>')
plot(cars)
cat('<h1>Hello</h1>')
```
然而,包装图像似乎打破了它。我还注意到
<img>
包裹在 <p>
中有可能阻止这种行为吗?
最佳答案
这是一种方法。
wrap = div
作为包裹在 div
内的 block 选项. out.extra = ""
愚弄knitr
输出 html 以进行绘图输出。请注意,这仅对 div
是必需的。标签而不是 span
, 因为 markdown 在 span
中被解析标签.s 完毕!
这是 gist带有 Rmd、md 和 html 文件,这里是 html preview
## knitr Chunk Hook to Wrap
```{r setup, echo = F}
knit_hooks$set(wrap = function(before, options, envir){
if (before){
paste0('<', options$wrap, '>')
} else {
paste0('</', options$wrap, '>')
}
})
```
```{r comment = NA, echo = F, wrap = 'div', out.extra=""}
plot(mtcars$mpg, mtcars$wt)
```
关于r - 将绘图包装在 Rmd 文件中的另一个 html 容器中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15370291/