子表上方的标题与子标题包中断了下表的编号

子表上方的标题与子标题包中断了下表的编号

我使用 subcaption 包并排显示多个表格。我的文档遵循将表格标题放在表格上方的惯例,我希望至少为元标题保留此惯例。

如果我将标题放在子表条目上方,则下表将跳过编号中的一个增量,如下所示:

以下标题:表 1 表 2

上面的标题:表 1 表 3

这是产生错误编号的情况的一个例子:

\documentclass[11pt,a4paper,toc=listof,toc=bib,abstract=true,parskip=half]{scrreprt}

\usepackage{subcaption}

\begin{document}
\chapter{firstchapter}
\begin{table}[ht]
\caption{A table with caption on top}\label{tab:1}
\begin{subtable}{.5\linewidth}\centering
\caption{A subtable}\label{tab:1a}
{\begin{tabular}{ccc}
\ $a$ & $b$ & $c$ \\
\hline 0 & 0 & 0 \\
\ 1 & 1 & 1 \\
\end{tabular}}
\end{subtable}%
\begin{subtable}{.5\linewidth}\centering
\caption{Another subtable}\label{tab:1b}
{\begin{tabular}{c c c}
\ $a$ & $b$ & $c$ \\
\hline 0 & 0 & 0 \\
\ 1 & 1 & 1 \\
\end{tabular}}
\end{subtable}
\end{table}

\begin{table}
{\begin{tabular}{c c c}
\ $a$ & $b$ & $c$ \\
\hline 0 & 0 & 0 \\
\ 1 & 1 & 1 \\
\end{tabular}}

\caption{Any other table}\label{tab:2}
\end{table}

\end{document}

是我使用错了什么,还是这是 subcaption 包中的一个错误?任何意见都值得感激,我宁愿不在表格之后手动“修复”计数器或更改包。

答案1

如果您希望在顶部和底部字幕之间交替,则必须设置\captionabove而不是上部\caption

如果您想将它们全部放在顶部,只需将选项设置captions=tableheading为您的文档类并像平常一样添加标题。

% arara: pdflatex

\documentclass[%
    ,parskip=half
    %,captions=tableheading
    ]{scrreprt}
\usepackage{subcaption}
\usepackage{booktabs}

\begin{document}
\chapter{firstchapter}
\begin{table}[ht]
    \captionabove{A table with caption on top}\label{tab:1}
    \begin{subtable}{.5\linewidth}\centering
        \subcaption{A subtable}\label{tab:1a}
        \begin{tabular}{ccc}
            $a$ & $b$ & $c$ \\\midrule
            0 & 0 & 0 \\
            1 & 1 & 1 \\    
        \end{tabular}
    \end{subtable}%
    \begin{subtable}{.5\linewidth}\centering
        \subcaption{Another subtable}\label{tab:1b}
        \begin{tabular}{c c c}
            $a$ & $b$ & $c$ \\\midrule
            0 & 0 & 0 \\
            1 & 1 & 1 \\
        \end{tabular}
    \end{subtable}%
\end{table}

\begin{table}
    \centering
    \begin{tabular}{ccc}
        $a$ & $b$ & $c$ \\\midrule
        0 & 0 & 0 \\
        1 & 1 & 1 \\
    \end{tabular}
    \caption{Any other table}\label{tab:2}
\end{table}
\end{document}

相关内容