子表参考编号从零开始

子表参考编号从零开始

我有一个 latex 文档,其中有一个包含两个子表的表。当我引用整个表时,编号从 1 开始,但当我引用其中一个子表时,编号从 0 开始。以下是我的设置示例:

% In my preamble
\usepackage[tight,footnotesize]{subfigure}

% In my document section
\section{Section}
\subsection{Sub Section}

% My Table
\begin{table}[ht]
  \centering
  \subtable[Sub Table 1]
  {
    \label{tbl:sub-table-1}
    \centering
    \begin{tabular}{ l c }
      \textbf{A} & \textbf{B} \\
      1 & 2 \\
      2 & 3 \\
    \end{tabular}
  }
  \subtable[Sub Table 2]
  {
    \label{tbl:sub-table-2}
    \centering
    \begin{tabular}{ l c }
      \textbf{A} & \textbf{B} \\
      1 & 2 \\
      2 & 3 \\
    \end{tabular}
  }
  \caption{Sub Tables}
  \label{tbl:table-1}
\end{table}

This it my sub table \ref{tbl:sub-table-1}. % Comes out 0(a) instead of 1(a)
This is my table \ref{tbl:table-1}. % Comes out to 1 as you expect

答案1

subfigure是过时的软件包,不应再使用。您可以改用该subcaption软件包:

\documentclass[11pt]{article}
\usepackage{caption}
\usepackage{subcaption}

\captionsetup[subtable]{font=footnotesize}

\begin{document}

\section{Section}
\subsection{Sub Section}

\begin{table}[ht]
  \begin{subtable}{.5\textwidth}
  \centering
  \subcaption{Subtable 1}
  \begin{tabular}{ l c }
    \textbf{A} & \textbf{B} \\
    1 & 2 \\
    2 & 3 \\
  \end{tabular}
  \label{tbl:sub-table-1}
  \end{subtable}  
  \begin{subtable}{.5\textwidth}
  \centering
  \subcaption{Subtable 2}
  \begin{tabular}{ l c }
    \textbf{A} & \textbf{B} \\
    1 & 2 \\
    2 & 3 \\
  \end{tabular}
  \label{tbl:sub-table-2}
  \end{subtable}  
  \caption{Sub Tables}
  \label{tbl:table-1}
\end{table}

This it my subtable~\ref{tbl:sub-table-1}.
This is my table~\ref{tbl:table-1}.

\end{document}

编辑:我添加了\captionsetup命令(以更改子表标题的字体大小)。

相关内容