2017-02-25 9 views
3

ニットされたドキュメント "asis"にpander()で複数の出力を作成するにはどうすればよいですか?ファンクションに複数のpander()がある

panderを複数回呼び出すと、最新のものだけがHTML出力に表示されます。ここでは例です:ニット文書で

tmp = function() { 
    pander('A') 
    pander('B') 
    pander('C') 
} 
tmp() 

これは与える:C

私はpanderOptions('knitr.auto.asis', FALSE)を設定することができますかpander()出力は標準出力に書き込まれるように、私はcat()を使用することができます。しかし、それは文書の一部ではなく、コードとしてフォーマットされます。いくつかのテーブルをフォーマットするのにpander()が必要なので、これは役に立ちません。

答えて

2

tmp関数は最後のオブジェクトのみを返します。そのため、Cが印刷されます。

```{r results='asis'} 
library(pander) 
panderOptions('knitr.auto.asis', FALSE) 
tmp = function() { 
    pander('A') 
    pander('B') 
    pander('C') 
} 
tmp() 
``` 

:あなたは自動ASIS便利なオプションを使用せずに、すぐにstdoutに各オブジェクトを作成したい場合は、あなたが関係knitrチャンクオプション、例えばを使用しを行ったようにオプションを無効にするには、両方持っています関連する"Using pander with knitr" vignetteの例を参照してください。

+0

ああ、素晴らしい! 'results = 'asis''オプションは私が行方不明だったものでした! – BurninLeo

関連する問題