2

Sweave + RweaveHTML に問題があります

生成中のhtmlファイルに cat end の出力をアップしたいです。そうでない場合があり、その理由がわかりません:(

test = function()
{
   #bla bla;
   cat("Result is...")
}

そして、Rnw ファイルで、次のすべてを試しました。

<<echo=FALSE, results=html, include=TRUE>>=
test()
@

<<results=html, include=TRUE>>=
test()
@

<<results=html>>=
test()
@

<<>>=
test()
@

しかし、結果の HTML ファイルに cat の出力が表示されません。私はこれがうまくいくはずだと確信しています...

stdout出力を最終的なhtmlファイルに取得するために何をすべきかについてのアイデアはありますか?

どうも!

4

1 に答える 1

1

ドライバーは、出力を作成するという点でドライバーとは異なる動作をします。コードのすべての行からの結果RweaveHTML汎用関数で処理されます。出力を作成する他の方法は機能しません。したがって、関数内から出力を取得するには、私が知っている 2 つの方法があります。1 つはジェネリックによって処理される値を返すことで、もう 1 つは直接呼び出すことです。関数の次の置換は、両方を示しています。RweaveLatexHTMLHTMLHTMLtest

test <- function() {
   #bla bla;
   HTML("Result is...")
   "Return value is"
}

;catに置き換えることもできます。HTMLその後、元の機能が機能します。しかし、これはちょっとしたハックであり、予期しない結果をもたらす可能性があります。あなたが置くだろう

cat <- HTML

ドキュメントの先頭にある (おそらく非表示の) Sweave チャンク内。

于 2011-11-04T13:04:37.110 に答える