2016-04-02 13 views
4

は、私は、このRNWファイルニット想像:それはちょうどいくつかのテキストと3つのテーブルを出力する簡単な例ですRは、knitrはチャンクの順序を尊重しないとテキスト

\documentclass{article} 

\begin{document} 

Table1 
<<example,results='asis', echo=FALSE>>= 
require(xtable) 
nn <- 15 
mydata <- data.frame(A=1:nn,C=nn:1, C=runif(nn), D=rnorm(nn)) 
xtable(mydata, caption="Table1") 
@ 

Table2 
<<example2,results='asis', echo=FALSE>>= 
xtable(mydata, caption="Table2") 
@ 

Table3 
<<example3,results='asis', echo=FALSE>>= 
xtable(mydata, caption="Table3") 
@ 

\begin{obeylines} 
Just some text 
\end{obeylines} 


\end{document} 

を。

奇妙なことに、自分のコードに書いたことの順序を尊重するものではありません。 私はこの(2 PDFページのサイドビュー) enter image description here

を得る。しかし、「表3」のテキストは表3自体前とtable2の後に表示され、テキストは「ほんの一部のテキストは、」文書の最後に表示されます。

複数の行を書き込むと、行が途切れます。

テーブルが場所に収まらない場合は、次のページに移動する必要がありますが、次のテキストと表を使用してください。

また、他の例では、適合しないテーブルがランダムに再割り当てされることがあります。

これを防ぐにはどうすればいいですか? ニットの問題かラテックスかはわかりません。

私は、Texlive 2015、Rstudio、R 3.2.3、W​​indows 10、および関連するすべてのパッケージの最新バージョンを使用しています。

答えて

1

デフォルトでは、print.xtable()は、LaTeX \table{...}という環境を生成します。これは、フローティングオブジェクトとして定義されています。 `?print.xtableを参照してください。

<<example2,results='asis', echo=FALSE>>= 
print(xtable(mydata, caption="Table2"),floating=FALSE) 
@ 

(未テスト...)

代わりに、あなたはtable.placement="H"を試みることができます。 \usepackage{float}this question from tex.stackexchange.comを参照)が必要な場合があります。

(もテストされていない...)

+0

私は前に試してみたが、それは完全にキャプションとでもテーブルの位置を台無し。 – skan

関連する問題