文档末尾的表格和附录

文档末尾的表格和附录

我有一份LaTeX包含章节和附录的文档。部分章节和附录讨论了表格。表格应列在文档末尾 (无法在每个相应部分内列出)。我希望各节中引用的表格编号为表 1、表 2、表 3 等。相反,附录中引用的表格应编号为表 A.1、表 A.2、...(如果在附录 A 中引用)、表 B.1、表 B.2、...(如果在附录 B 中引用)等。

正如评论中所建议的,我尝试过使用endfloat但它似乎不起作用,也许我没有以正确的方式实现它。

这是一个有效的例子:

 \documentclass[12 pt,a4paper, oneside, openany, notitlepage]{article}
\usepackage[inner=1in,outer=1in,bottom=1in,top=1in]{geometry}
\usepackage{setspace}
\doublespacing
\usepackage{hyperref}
 \usepackage[nomarkers, nolists]{endfloat}

\begin{document}
\section{Section 1}
Talk about Table \ref{tab1}. This Table should be numbered 1.
 \begin{table}  
\centering
  \begin{tabular}{c c c c c c c c }
\hline
Examples     &  [1]                 &[2]                          &[3]                    &[4]                     & [5]               &[6]                   \\
\hline
a                   &  a   & a          &                       &                        &                     &                        \\
\hline
 \end{tabular}
\caption{Blah.}
\label{tab1}
\end{table}

\section{Section 2}
Talk about Table \ref{tab2}. This Table should be numbered 2.
 \begin{table}  
\centering
  \begin{tabular}{c c c c c c c c }
\hline
Examples     &  [1]                 &[2]                          &[3]                    &[4]                     & [5]               &[6]                   \\
\hline
a                   &  a   & a          &                       &                        &                     &                        \\
\hline
 \end{tabular}
\caption{Blah.}
\label{tab2}
\end{table}

\begin{appendix}
\counterwithin{figure}{section}
\counterwithin{table}{section}
\section{Appendix A}
\section{Appendix B}
Talk about Table \ref{tabB1}. This Table should be numbered B.1.
 \begin{table} 
\centering
  \begin{tabular}{c c c c c c c c }
\hline
Examples     &  [1]                 &[2]                          &[3]                    &[4]                     & [5]               &[6]                   \\
\hline
a                   &  a   & a          &                       &                        &                     &                        \\
\hline
 \end{tabular}
\caption{Blah.}
\label{tabB1}
\end{table}

\end{appendix}

编号应为表1、表2、表B.1。

答案1

要记住的是,表格环境中的所有代码都将在文档结束时执行。解决方案是\thetable使用 将其保存为表格环境之外的格式\pretable,然后在运行表格时复制它们。

请注意,如果一个表格中有两个标题,则需要两个\pretables,等等。

\documentclass[12 pt,a4paper, oneside, openany, notitlepage]{article}
\usepackage[inner=1in,outer=1in,bottom=1in,top=1in]{geometry}
\usepackage{setspace}
\doublespacing
\usepackage{hyperref}
 \usepackage[nomarkers, nolists]{endfloat}

\newcounter{tablenumber}% does not reset to 0
\newcommand{\pretable}{\stepcounter{tablenumber}\stepcounter{table}%
  \expandafter\xdef\csname TABLE\arabic{tablenumber}\endcsname{\thetable}}

\begin{document}
\section{Section 1}
Talk about Table \ref{tab1}. This Table should be numbered 1.
\pretable
 \begin{table}  
\centering
  \begin{tabular}{c c c c c c c c }
\hline
Examples     &  [1]                 &[2]                          &[3]                    &[4]                     & [5]               &[6]                   \\
\hline
a                   &  a   & a          &                       &                        &                     &                        \\
\hline
 \end{tabular}
\caption{Blah.}
\label{tab1}
\end{table}

\section{Section 2}
Talk about Table \ref{tab2}. This Table should be numbered 2.
\pretable
 \begin{table}  
\centering
  \begin{tabular}{c c c c c c c c }
\hline
Examples     &  [1]                 &[2]                          &[3]                    &[4]                     & [5]               &[6]                   \\
\hline
a                   &  a   & a          &                       &                        &                     &                        \\
\hline
 \end{tabular}
\caption{Blah.}
\label{tab2}
\end{table}

\begin{appendix}
\counterwithin{figure}{section}
\counterwithin{table}{section}
\section{Appendix A}
\section{Appendix B}
Talk about Table \ref{tabB1}. This Table should be numbered B.1.
\pretable
 \begin{table} 
\centering
  \begin{tabular}{c c c c c c c c }
\hline
Examples     &  [1]                 &[2]                          &[3]                    &[4]                     & [5]               &[6]                   \\
\hline
a                   &  a   & a          &                       &                        &                     &                        \\
\hline
 \end{tabular}
\caption{Blah.}
\label{tabB1}
\end{table}

\end{appendix}
\setcounter{table}{0}%
\renewcommand{\thetable}{\csname TABLE\arabic{table}\endcsname}%
\end{document}

相关内容