Как контролировать неправильные разрывы страниц longtable в latex() из пакета Hmisc?
Я использую Sweave и latex() из пакета Hmisc, чтобы вставить longtable в мой PDF.
Когда я делаю это в первый раз, таблица красиво накрывается, заполняя страницы таблицей.
Если я сделаю это снова, некоторые страницы будут заполнены только наполовину (например, страница 4 в PDF), что выглядит странно и как-то неправильно, потому что кажется ненужным местом.
Есть ли способ контролировать это? Или что я могу сделать, чтобы улучшить внешний вид? Особенно, если я добавлю текст и графики, это не будет хорошо смотреться с пустым пространством на странице 4.
\documentclass{article}
\usepackage{Sweave}
\usepackage{longtable}
\usepackage{booktabs}
\begin{document}
\SweaveOpts{concordance=TRUE}
I want to insert this longtable
<<tab.R,echo=FALSE,results=tex>>=
library(Hmisc)
#library(xtable)
x <- matrix(rnorm(1000), ncol = 10)
x.big <- data.frame(x)
latex(x.big,"",file="",longtable=TRUE, dec=2,caption='First longtable spanning several pages')
@
then write some text. Maybe add a graph...
And then another table
<<tab.R,echo=FALSE,results=tex>>=
latex(x.big,"",file="",longtable=TRUE, dec=2,caption='Second longtable spanning wrongly')
@
\end{document}
1 ответ
Не передавайте этот вопрос группе латекса, это проблема Hmisc/latex, которая добавляет \clearpage
в текс каждые 40 строк по умолчанию. Проверьте параметр lines.page=40
из latex
, Я не понимаю, почему было установлено это значение по умолчанию, но что-то вроде
latex(x.big,"",file="",longtable=TRUE, dec=2,
caption='Second longtable spanning wrongly', lines.page=4000)
поможет вам решить проблему.