2017-09-18 12 views
4

私はrsweaveというファイルを週に2回走っています。前回私が変更したものをいくつか変更してpdfにコンパイルすると、次のようなエラーが出ました: enter image description here pdfはコンパイルされていますが、エラーが発生したのはpdf出力です余分なページ(最初のページ)はすべて空白です。エラーの原因がわからないため、エラーの再現可能な例を作る方法がわかりません。しかし、私はちょうど画像のもののようなラテックスエラーを取得するとrsweaveファイルをデバッグする方法を一般的に知りたいRsweaveをデバッグする方法

+0

出発点として[this](https://tex.stackexchange.com/questions/125399/how-to-trace-latex-errors-efficiently)をご覧ください。あなたの解決策を早くするかもしれない最後の成功したコンパイルを* diff *できれば。 –

答えて

0

あなたはどのように実行しているのかはわかりませんが、RStudioのようです。このようなものをデバッグするには、SweaveをRコンソールで明示的に実行します。入力ファイルがsource.Rnwある場合、これはsource.texが生成されます、

Sweave('source.Rnw') 

を実行します。そのファイルをテキストエディタで開き、そのファイルの先頭を見ます。 \Schunkが27行目で使用されていることがわかりますが、\begin{document}は後で発生しません。

私は、ヘッダーにテキストまたはコードチャンクを追加したと思います。すべてのテキストは\begin{document}の後に属します。

編集する:をコードチャンクで\begin{document}より前に使用していたことが、以下のコメントから分かります。 Sweaveでは、printの出力がドキュメントに入ります。メッセージがコンソールログに表示され、文書は表示されないようにするには、message("some text")を使用します。また、ドキュメントヘッダーでこれを行う場合は、コマンドのエコーを抑制する必要があります。文書中の

1 : keep.source term hide (Untitled.Rnw:6) 
Started at 2017-09-27 08:28:33 

と何も:たとえば、

<<echo=FALSE,results=hide>>= 
message("Started at ", Sys.time()) 
@ 

は、あなたのコンソールログに次のようなものになります。

+0

これはうまくいきました。私はbegin文書の前にテキストを見ていますが、コンパイルにどれくらいの時間がかかるかを知る関数に 'print'を入れました。だから、 'print'を使ってループで言うことができ、私が得るエラーを得る方法はありますか? –

+0

@alejandroandrade:あなたはコンソールや文書に 'print'していますか? – Werner

+0

@Werner私はコンソールに印刷しているか、少なくともそれは私の考えだと思う。 –

関連する問題