我想footnote
在表格中创建一个。所以我用了tablefootnote
http://www.ctan.org/tex-archive/macros/latex/contrib/tablefootnote按照谷歌搜索的建议去做,因为正常的\footnote
操作在表格内不起作用。
但是,实际的脚注似乎有时会出现在上一页的底部,有时会出现在下一页的底部。
我希望脚注显示在同一页面上。
示例 1,脚注显示在上一页的底部
\documentclass[12pt,notitlepage]{article}%
\usepackage{float}%
\usepackage{lipsum}
\usepackage{tablefootnote}
\begin{document}
\section{A}
\lipsum[4-10]
\section{B}
\begin{table}[htp]
\begin{center}
\begin{tabular}{|l|l|l|}\hline
$e$ & 0.97774 & 0.9935 \\ \hline
semimajor axis $a$ & 300000 & 262413 \\ \hline
true anamoly $f$ & 163.76 & 176.08 \\\hline
semimajor axis $a$ & 300000 & 262413 \\ \hline
true anamoly $f$ & 163.76 & 176.08 \\\hline
$r_p$ & 6678 & 1689
\tablefootnote{spacecraft will hit earth on way back since $r_p<r_{earth}$} \\\hline
\end{tabular}
\caption{Summary table for non-tangential per and post flyby the moon}
\label{tab:part_3_1_summary}
\end{center}
\end{table}
\end{document}
示例 2,脚注显示在下一页
\documentclass[12pt,notitlepage]{article}%
\usepackage{float}%
\usepackage{lipsum}
\usepackage{tablefootnote}
\begin{document}
\section{A}
\lipsum[4-6]
\section{B}
\begin{table}[htp]
\begin{center}
\begin{tabular}{|l|l|l|}\hline
semimajor axis $a$ & 300000 & 262413 \\ \hline
true anamoly $f$ & 163.76 & 176.08 \\\hline
$r_p$ & 6678 & 1689
\tablefootnote{spacecraft will hit earth on way back since $r_p<r_{earth}$} \\\hline
\end{tabular}
\caption{Summary table for non-tangential per and post flyby the moon}
\label{tab:part_3_1_summary}
\end{center}
\end{table}
\section{C}
\lipsum[4-10]
\end{document}
Miktex 2.9,最新版本。
答案1
页面底部的浮动元素的脚注会产生这种不良效果,因为浮动元素可能会浮动到另一页。如果确实需要表格(或浮动元素,一般来说)的脚注,最好在浮动元素后立即使用脚注,例如,可以使用threeparttable
或者ctable
包。
使用的示例threeparttable
:
\documentclass[12pt,notitlepage]{article}%
\usepackage{lipsum}
\usepackage{threeparttable}
\begin{document}
\section{A}
\lipsum[4-6]
\section{B}
\begin{table}
\centering
\begin{threeparttable}
\caption{Summary table for non-tangential per and post flyby the moon}
\label{tab:part_3_1_summary}
\begin{tabular}{|l|l|l|}\hline
semimajor axis $a$ & 300000 & 262413 \\ \hline
true anamoly $f$ & 163.76 & 176.08 \\\hline
$r_p$ & 6678 & 1689\tnote{1} \\ \hline
\end{tabular}
\begin{tablenotes}
\item[1] spacecraft will hit earth on way back since $r_p<r_{earth}$
\end{tablenotes}
\end{threeparttable}
\end{table}
\section{C}
\lipsum[4-10]
\end{document}
同一张表的使用方法如下ctable
:
\documentclass[12pt,notitlepage]{article}%
\usepackage{lipsum}
\usepackage{ctable}
\begin{document}
\section{A}
\lipsum[4-6]
\section{B}
\ctable[
caption = Summary table for non-tangential per and post flyby the moon.
label={tab:part_3_1_summary}
]{|l|l|l|}
{\tnote[1]{spacecraft will hit earth on way back since $r_p<r_{earth}$}}
{
\hline
semimajor axis $a$ & 300000 & 262413 \\ \hline
true anamoly $f$ & 163.76 & 176.08 \\ \hline
$r_p$ & 6678 & 1689 \\
\hline
}
\section{C}
\lipsum[4-10]
\end{document}
这两个软件包都提供了一些自定义注释格式的可能性;请参阅软件包的文档
答案2
我听从了贡萨洛·梅迪纳的答案使用threeparttable
,但我在将标题正确置于表格上方时遇到了一些麻烦。它固定在表格的左边缘,但由于标题很长,它超出了表格的左边缘。
我的解决方案是将其移至\begin{threeparttable}
标题下方,表格环境之前。这样,标题就会位于浮动内的中心,并占据其整个宽度(这可能是您想要的,也可能不是您想要的)。脚注位于表格下方,并且仅延伸至表格的整个宽度,正如预期的那样。
\documentclass[12pt,notitlepage]{article}%
\usepackage{threeparttable}
\begin{document}
\begin{table}
\centering
\caption{Here's my long caption text that I want centered on the page.
\label{tab:simulation_parameters}}
\begin{threeparttable}
\begin{tabular}{lp{1.7in}}
\hline
Material & Index of refraction\\
\hline
silicon & 3.47772\\
silicon dioxide & 1.54\\
silicon nitride & 2.217\\
HSQ\tnote{a} & 1.39\\ \hline
\end{tabular}
\begin{tablenotes}
\item[a] Here's my footnote.
\end{tablenotes}
\end{threeparttable}
\end{table}
\end{document}