2016-12-14 77 views
1

例如,我想插入的每个在下面的代码块中的两个曲线图之间的断裂而不会破坏它:如何在knitr R代码块中插入降价?

```{r} 
plot(1:100, 1:100) 
plot(1:100, 1:100) 
``` 

,使得结果是这样的:

```{r} 
plot(1:100, 1:100) 
```` 

<br> 

```{r} 
plot(1:100, 1:100) 
``` 

如果results='asis'is a chunk option,它看起来像你可以直接打印<br>命令,如:

```{r} 
plot(1:100, 1:100) 
print('<br>') 
plot(1:100, 1:100) 
``` 

做什么我为其他类型的块做?

+1

这是可以使用'par(mfrow = c(2,1))'处理的东西吗? – r2evans

+0

'par'可能能够插入一个中断,但我并不假定像段引用那样是任意的markdown代码。此外,如果您可以在这种情况下使用'
',则无需担心要创建多少个图。 – Alex

+1

我想你会需要你的代码块来绘制一个图像。也许'knitr :: knit_child'更合适? – r2evans

回答

2

可以使用knitr中的函数asis_output()仅按原样输出<br>。因此,举例来说,你可以这样做:

```{r} 
plot(1:100, 1:100) 
asis_output('<br>') 
plot(1:100, 1:100) 
``` 

这比使用整个块的results = 'asis'选项,因为这两个地块不受影响更好。

请注意,如果您正在编织PDF文件,这也适用于乳胶,但反斜杠将不得不逃脱。例如:

```{r} 
plot(1:100, 1:100) 
asis_output("\\\\newline") 
plot(1:100, 1:100) 
```