考虑下面的 MWE 文档和屏幕截图。其中包含一个长表,后面跟着一个小表。如您所见,长表被推送到其自己的页面,但问题是所有后面的表也被推送到章节末尾。
因此,我最终得到了一个包含大量文本的章节,并且在最后包含大量表格。
我如何指示 Latex 优化表格位置(使其在页面上分布更均匀)?
平均能量损失
\documentclass{book}
\usepackage{lipsum}
\begin{document}
\chapter{MWE}
\lipsum[50]
\lipsum[50]
\textbf{Here we discuss table 1}
\begin{table}[bt]
\begin{tabular}{l}
Onepage table\\
Onepage table\\
Onepage table\\
Onepage table\\
Onepage table\\
Onepage table\\
Onepage table\\
Onepage table\\
Onepage table\\
Onepage table\\
Onepage table\\
Onepage table\\
Onepage table\\
Onepage table\\
Onepage table\\
Onepage table\\
Onepage table\\
Onepage table\\
Onepage table\\
Onepage table\\
Onepage table\\
Onepage table\\
Onepage table\\
Onepage table\\
Onepage table\\
Onepage table\\
Onepage table\\
Onepage table\\
Onepage table\\
Onepage table\\
Onepage table\\
Onepage table\\
Onepage table\\
\end{tabular}
\end{table}
\lipsum[50]
\textbf{Here we are going to discuss table 2}
\begin{table}[bt]
\begin{tabular}{l}
Small Table\\
\end{tabular}
\end{table}
\lipsum[50]
\lipsum[50]
\lipsum[50]
\end{document}
答案1
article
类默认有
\renewcommand\topfraction{.7}
\renewcommand\bottomfraction{.3}
因此,如果要将浮动元素放置在普通文本页面上,则如果放置在顶部,则最多可以占用 70% 的空间,如果放置在底部,则最多可以占用 30% 的空间,如果浮动元素大于该大小,则必须放置在仅由浮动元素组成的“浮动页面”上。
该选项的唯一效果[bt]
是防止浮动页面(默认选项为[tbp]
),因此您的大浮动可能不会放置在页面的顶部或底部,因为它太大,并且可能不会放置在页面上,因为您已明确消除了这种p
可能性。
当所有卡住的浮动元素被转储到浮动页面上并忽略任何限制时,这种无法放置的浮动元素将漂移到文档或命令的末尾,\clearpage
作为紧急修复措施。
由于每种类型的浮标都是按顺序排列的,一旦一个表漂移到末尾,所有后面的表都会随之漂移。
如果省略该[bt]
选项,则两个表格都将放在第 2 页,其余文本放在第 3 页。