2010-11-25 5 views
4

どのようにxtableの大きなテーブルを各ページに置くのですか?そうすれば、テーブル間のテーブルを読みやすくなります。ヘッダー?

私ははSweaveで次のコマンドを使用します。longtable (LaTeX) package specificationはそのURLで見つけることができます

答えて

4

あなたの答えのための

test.big<- xtable(test,label="table",caption='test') 
align(test.big) <- "|c|c|c|c|l|c|c|c|" 
print(test.big,tabular.environment='longtable',include.colnames = TRUE,floating=FALSE) 

感謝を。彼らは、「他のすべてのページ」を言うとき、彼らは他のすべてのページを意味

\caption[]{(continued)}\\ 
\hline\hline 
\multicolumn{2}{@{*}[email protected]{*}}% 
{This part appears at the top of every other page}\\ 
\textbf{First}&\textbf{Second}\\ 
\hline\hline 
\endhead 

:出力ページ2と3の上に表示された例では、コードのセクションは、セクション8であり、私は以下のそれのビットを再現しています異なるヘッダーを持つ最初のヘッダーよりもxtable呼び出しが任意の編集なしで、箱から出して動作していない場合は、まず、あなたのLaTeXのプリアンブルに指定されたlongtableパッケージを持っていることを確認する必要があります:

\usepackage{longtable} 
8

私はこの質問のためのより良い答えがここで提供されると思います:Column names on each page with xtable in Sweave

Rでテーブルを編集する場合はどうすればよいですか?上のソリューションは出力を編集するので、これらの行を手動でlongtableコードに追加する必要はありません。したがって、これはうまく機能:あなたはadd.to.rowリストにいくつかの引数を追加することができます

print(test.big, tabular.environment='longtable', include.colnames = TRUE, 
floating=FALSE, add.to.row = list(pos = list(0), command = "\\hline \\endhead ")) 

注:

print(test.big, tabular.environment='longtable', include.colnames = TRUE, 
floating=FALSE, list(pos = list(seq(1,nrow(get(groups[i])), by = 2), 0), 
command = c("\\rowcolor[gray]{.95} ","\\hline \\endhead "))) 

あなたはあなたのSweaveファイルにこれを追加する必要があります:

\usepackage{colortbl} 

これにより、1ページごとに1行おきに&ヘッダーがグレーに塗りつぶされます。