xtable大表每页的标题?

时间:2010-11-25 18:31:24

标签: r latex bigtable sweave xtable

如何在每个页面上放置一个xtable表格的大表?,这样就更容易在表格之间读取表格。

我在Sweave中使用以下内容:

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)

感谢您的回答

2 个答案:

答案 0 :(得分:8)

我认为这里提供了一个更好的答案:Column names on each page with xtable in Sweave

如果您想在R中编辑表格怎么办?上面的解决方案编辑了输出,因此您无需手动在longtable代码中添加这些行。因此效果更好:

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

请注意,您可以在add.to.row列表中添加多个参数:

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 :(得分:4)

可以在该网址找到longtable (LaTeX) package specification。输出显示在第2页和第3页的示例中的代码部分在第8节中,我在下面复制了它的一部分:

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

当他们说“每隔一页”时,他们指的是除了第一页之外的每个页面,它们具有不同的标题。如果xtable调用在没有任何编辑的情况下没有开箱即用,那么您应首先检查您是否在LaTeX前言中指定了longtable包:

\usepackage{longtable}