使用 \documentclass[man]{apa6} 时表格无法显示

使用 \documentclass[man]{apa6} 时表格无法显示

我使用\documentclass[man]{apa6},编译时我的表格不会显示.tex。我使用以下代码:

\documentclass[man]{apa6}
\usepackage{enumitem}
\usepackage{amsmath} 
\usepackage{relsize} 
\usepackage{apacite} 
\usepackage{multirow} 
\usepackage{graphicx}
\usepackage{bm}
\usepackage{caption}
\usepackage{subcaption}
\usepackage{threeparttable}

\begin{document}

\begin{table}
    \begin{threeparttable}
     \label{table}
        \begin{tabular}{l c c c c} \hline
        & $i = 1$ & $i = 2$ & $i = 3$ & $i = 4$ \\ \hline
        $\pi_{0(i)}$ & 1.00 & 1.00 & 1.00 & 1.00 \\
        $\pi_{1(i)}$ & 0.90 & 0.80 & 0.70 & 0.60 \\
        $\pi_{2(i)}$ & 0.50 & 0.40 & 0.30 & 0.20 \\
        \end{tabular}
    \end{threeparttable}
\end{table}

\end{document}

有谁知道如何解决这一问题?

答案1

如果我在表格前添加适当的部分,则不会出现错误。

\documentclass[man]{apa6}
\usepackage{enumitem}
\usepackage{amsmath} 
\usepackage{relsize} 
\usepackage{apacite} 
\usepackage{multirow} 
\usepackage{graphicx}
\usepackage{bm}
\usepackage{caption}
\usepackage{subcaption}
\usepackage{threeparttable}

\usepackage{kantlipsum} % for mock text

\begin{document}
\title{X}\shorttitle{X}
\author{Who}
\affiliation{Z}
\abstract{ABS}
\maketitle

\kant[1-3]

\begin{table}
\begin{threeparttable}
     \label{table}
        \begin{tabular}{l c c c c} \hline
        & $i = 1$ & $i = 2$ & $i = 3$ & $i = 4$ \\ \hline
        $\pi_{0(i)}$ & 1.00 & 1.00 & 1.00 & 1.00 \\
        $\pi_{1(i)}$ & 0.90 & 0.80 & 0.70 & 0.60 \\
        $\pi_{2(i)}$ & 0.50 & 0.40 & 0.30 & 0.20 \\
        \end{tabular}
\end{threeparttable}
\end{table}

\kant[4-6]

\end{document}

答案2

如果你使用apa6带有选项的 documentclass man,那么你可能也应该使用选项floatsintext。引用用户指南:

在修改和校对稿件时,最好随时准备好表格和图片(而不是将大部分内容转到稿件末尾的 floatsintext 才能访问它们)。该floatsintext选项(在行中指定 \documentclass)将表格和图片集成到文本中提及的位置。当然,这仅适用于该man选项,因为其他格式已经将浮动元素与文本集成在一起。

由于表格中有很多“数学”元素,我认为将其作为array环境输入更为直接。您可能还想进一步组织表格的标题;以下代码中给出了具体建议。

在此处输入图片描述

\documentclass[man,floatsintext]{apa6}
%% Commented out the unneeded instructions
%\usepackage{enumitem}
%\usepackage{amsmath} 
%\usepackage{relsize} 
%\usepackage{apacite} 
%\usepackage{multirow} 
%\usepackage{graphicx}
%\usepackage{bm}
%\usepackage{caption}
%\usepackage{subcaption}
\usepackage{threeparttable}
\usepackage{booktabs}

\title{xx}
\shorttitle{x}
\author{y}
\date{z}

\begin{document}

\begin{table}
    \begin{threeparttable}
     \label{table}
     \centering
        $\begin{array}{@{} l c c c c @{}} 
        \toprule
        & \multicolumn{4}{c@{}}{i}\\
        \cmidrule(l){2-5}
        & 1 & 2 & 3 & 4 \\ \midrule
        \pi_{0(i)} & 1.00 & 1.00 & 1.00 & 1.00 \\
        \pi_{1(i)} & 0.90 & 0.80 & 0.70 & 0.60 \\
        \pi_{2(i)} & 0.50 & 0.40 & 0.30 & 0.20 \\
        \bottomrule
        \end{array}$
    \end{threeparttable}
\end{table}

\end{document}

答案3

以下是我输入该表格的方式:

% arara: pdflatex
% arara: pdflatex

\documentclass[man]{apa6}
\usepackage{booktabs}
\usepackage{siunitx}
\usepackage{threeparttable}

\begin{document}    
\begin{table}
    \begin{threeparttable}
        \caption{a caption}\label{table}
        \begin{tabular}{l *{4}{S[table-format=1.2]}} 
            \toprule
                         & {$i = 1$} & {$i = 2$} & {$i = 3$} & {$i = 4$} \\ 
            \midrule
            $\pi_{0(i)}$ & 1.00      & 1.00      & 1.00      & 1.00 \\
            $\pi_{1(i)}$ & 0.90      & 0.80      & 0.70      & 0.60 \\
            $\pi_{2(i)}$ & 0.50      & 0.40      & 0.30      & 0.20 \\ 
            \bottomrule
        \end{tabular}
        \begin{tablenotes}
            \item[*] an item
        \end{tablenotes}
    \end{threeparttable}
\end{table} 
\end{document}

在此处输入图片描述

然而,这会导致错误Undefined control sequence. \efloatseparator。这取决于对endfloat由以下程序包加载的几个重新定义:apa6的几次重新定义。请参阅这里维持现状。

相关内容