如何从Hmisc包中控制latex()中longtable的错误分页?

phy*_*ysh 3 latex r page-break longtable sweave

我正在使用Hmisc包中的Sweave和latex()在我的PDF中插入一个longtable.

当我第一次这样做时,表格很好地传播,用桌子填满页面.

如果我再次这样做,一些页面只有一半(如PDF的第4页),这看起来很奇怪,而且不知何故,因为它似乎是不必要的空间.

有没有办法控制这个?或者我该怎么做才能改善外观?特别是,如果我添加一些文本和图形,第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}
Run Code Online (Sandbox Code Playgroud)

Die*_*nne 7

不要将这个问题传递给乳胶组,这是Hmisc/latex的问题,\clearpage默认情况下每40行添加一个tex.检查参数lines.page=40latex.我不明白为什么这个默认设置已经设置,但是类似的东西

latex(x.big,"",file="",longtable=TRUE, dec=2,
  caption='Second longtable spanning wrongly', lines.page=4000)
Run Code Online (Sandbox Code Playgroud)

让你解决问题.