Gdy używam knitr zbudować dokument HTML wyjście z następującego kodu:zapobiec knitr/Rmarkdown od przeplatanie wyjście kawałek z kodem
Chunk Output
========================================================
Outside a chunk.
```{r chunk1, results='asis'}
cat('Inside a chunk\n\n')
for (i in 1:3) {
cat('* Inside loop #', i, '\n')
}
cat('Outside a loop, but still inside the first chunk')
```
Between chunks.
```{r chunk2, results='asis'}
cat('Inside second chunk')
```
I get output gdzie kod w chunk1
jest przeplatana z wyjściem sprawozdania cat
. Co ciekawe, wyjście w pętli for
jest wyprowadzane jako pojedynczy blok.
wolałbym mieć cały kodz chunk1
pojawiać się najpierw, a następnie wszystkie wyjściaz chunk1
. Czy istnieje sposób, aby zapytać Rmarkdown/knitr, aby uniknąć bardziej szczegółowego przeplatania, który obecnie wykonuje?
Niekoniecznie uzyskanie co chcesz, ale można zrobić kawałki kodu 2, które są identyczne, jeden gdzie 'eval = FALSE, a drugi gdzie' echo = FALSE. –
Mogłem to zrobić. Albo mogę zawinąć zawartość porcji w 'for (x in 1)', która utrzymuje Rmarkdown z przeplatania wyjścia (kosztem niepotrzebnego kodu w moim doc). Ale wolałbym mieć opcję, aby to zrobić we właściwy sposób. Czy ktoś wie, czy to możliwe? – Harlan
@Harlan Nie sądzę, że jest to łatwe ze względu na sposób, w jaki knitr przetwarza te bloki. Minimalnym hackiem byłoby wstawienie bloku wewnątrz '{}' – hadley