заголовок на каждой странице большой таблицы xtable? - PullRequest
4 голосов
/ 25 ноября 2010

Как поместить большую таблицу из таблицы 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 ]

8 голосов
/ 28 марта 2012

Я думаю, что лучший ответ на этот вопрос представлен здесь: Имена столбцов на каждой странице с xtable в 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}

Это создает серую заливку в каждой второй строке и заголовке для каждой страницы.

4 голосов
/ 25 ноября 2010

Спецификация пакета longtable (LaTeX) находится по этому URL.Раздел кода в примерах, выходные данные которого приведены на страницах 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 не работает "из коробки" без какого-либо редактирования, сначала вам следует убедиться, что у вас есть пакет longtable, указанный в преамбуле LaTeX:

\usepackage{longtable}
...