添加标题 longtable 时出错

添加标题 longtable 时出错
\documentclass[a4paper,oneside,11pt]{article}
\usepackage[left=2.5cm,right=2.5cm,top=4cm,bottom=2.7cm]{geometry}
\usepackage{amsmath}
\usepackage{amsthm}
\usepackage{graphicx}
\usepackage{array}
\usepackage{newtxtext,newtxmath}
\usepackage{lipsum}
\usepackage{longtable}

\begin{document}
\theoremstyle{definition}
\newtheorem{theorem}{Theorem}[section]
\newtheorem{example}[theorem]{Example}
\lipsum[1-4]
\begin{example}
    We present the examples of t-norm and t-conorm using a table as follows.
    \begingroup
    \renewcommand{\arraystretch}{1.5}
    \begin{longtable}{|m{2.3cm}|c|c|}
        \caption{Example of t-norm and t-conorm}
        \hline
        \hfill \textbf{Name}\hfill \strut&\textbf{t-norm}&\textbf{t-conorm}\\
        \hline
        Standard intersection/ standard union&$T_m(x,y)=\min(x,y)$&$C_m(x,y)=\max(x,y)$\\
        \hline
        Bounded sum&$T_b(x,y)=\max(0,x+y-1)$&$C_b(x,y)=\min(1,x+y)$\\
        \hline
        Algebraic product/ Algebraic sum&$T_p(x,y)=xy$&$C_p(x,y)=x+y-xy$\\
        \hline
        Drastic&$T_D(x,y)=
        \begin{cases}
            y&\text{if }x=1\\
            x&\text{if }y=1\\
            0&\text{otherwise}
        \end{cases}$
        &
        $C_D(x,y)=
        \begin{cases}
            y&\text{if }x=0\\
            x&\text{if }y=0\\
            1&\text{otherwise}
        \end{cases}
        $
        \\
        \hline
        Nilpotent minimum/ Nilpotent maximum&$T_{nM}(x,y)=
        \begin{cases}
            \min(x,y)&\text{if }x+y> 1\\
            0&\text{otherwise}
        \end{cases}$&
        $
        C_{nM}(x,y)=
        \begin{cases}
            \max(x,y)&\text{if }x+y<1\\
            1&\text{otherwise}
        \end{cases}
        $
        \\
        \hline
        Hamacher product/ Einstein sum&$T_{H_0}(x,y)=
        \begin{cases}
            0&\text{if }x=y=0\\
            \dfrac{xy}{x+y-xy}&\text{otherwise}
        \end{cases}$&
        $
        C_{H_2}(x,y)=\dfrac{x+y}{1+xy}
        $\label{tabelnorma}
        \\
        \hline
        
    \end{longtable}
    \endgroup
\end{example}
\end{document}

我想在表格中添加标题。我正在使用longtable。但我不知道为什么该代码会出错。

在此处输入图片描述

如何修复?

答案1

  • \caption内部longtable必须终止\\(正如我在评论中提到的那样)
  • 对于一些偏离主题的表格调整可能会很有趣(请参阅下面的 MWE)。
\documentclass[a4paper,oneside,11pt]{article}
\usepackage[hmargin=2.5cm,
            vmargin={4cm,2.7cm}]{geometry}
\usepackage{mathtools, amsthm}
\theoremstyle{definition}
\newtheorem{theorem}{Theorem}[section]
\newtheorem{example}[theorem]{Example}
\usepackage{newtxtext,newtxmath}
\usepackage{graphicx}
\usepackage[skip=0.33\lineskip]{caption}
\usepackage{array, longtable}
\usepackage[column=O]{cellspace}
    \setlength\cellspacetoplimit{8pt}
    \setlength\cellspacebottomlimit{8pt}
\usepackage{lipsum}

\begin{document}
\lipsum[1-4]
\begin{example}
We present the examples of t-norm and t-conorm using a table as follows.
\begingroup
    \small
    \begin{longtable}{|>{\raggedright}O{m{3.5cm}}|*{2}{>{$}Oc<{$}|}}
        \caption{Example of t-norm and t-conorm}
        \label{tabelnorma}\\
        \hline
\hfil\textbf{Name}    
    & \textbf{t-norm}   & \textbf{t-conorm}             \\
        \hline
Standard intersection/ standard union
    & T_m(x,y)=\min(x,y)    & C_m(x,y)=\max(x,y)        \\
        \hline
Bounded sum
    & T_b(x,y)=\max(0,x+y-1)    & C_b(x,y)=\min(1,x+y)  \\
        \hline
Algebraic product/ Algebraic sum
    & T_p(x,y)=xy           & C_p(x,y)=x+y-xy           \\
        \hline
Drastic
    & T_D(x,y) = \begin{cases*}
            y & if $x=1$    \\
            x & if $y=1$    \\
            0 & otherwise 
                \end{cases*} & C_D(x,y) = \begin{cases*}
                                        y & if $x=0$    \\
                                        x & if $y=0$    \\
                                        1 & otherwise   
                                        \end{cases*} \\
        \hline
Nilpotent minimum/ Nilpotent maximum
    & T_{nM}(x,y) = \begin{cases*}
      \min(x,y) & if $x+y>1$   \\
             0  & otherwise
                    \end{cases*} &   C_{nM}(x,y) = \begin{cases*}
                                            \max(x,y) & if $x+y<1$  \\
                                                    1 & otherwise 
                                                   \end{cases*}   \\
        \hline
Hamacher product/ Einstein sum
    & T_{H_0}(x,y) = \begin{cases*}
                            0  & if $x=y=0$ \\
            \dfrac{xy}{x+y-xy} & otherwise 
                    \end{cases*} &  C_{H_2}(x,y)=\dfrac{x+y}{1+xy}  \\
        \hline
    \end{longtable}
\endgroup
\end{example}
\lipsum[5]
\end{document}

在此处输入图片描述

(红线显示部分页面布局)

答案2

既然你提到在之前的一个问题中如果你希望表格的宽度与文本宽度一样,我建议使用xltbular而不是longtable。使用其X类型列,表格的宽度会自动与指定的宽度一样宽,因此无需猜测第一列的适当宽度:

\documentclass[a4paper,oneside,11pt]{article}
\usepackage[left=2.5cm,right=2.5cm,top=4cm,bottom=2.7cm]{geometry}
\usepackage{amsmath}
\usepackage{amsthm}
\usepackage{graphicx}
\usepackage{array}
\usepackage{newtxtext,newtxmath}
\usepackage{lipsum}
\usepackage{xltabular}
\renewcommand{\tabularxcolumn}[1]{m{#1}}
\usepackage[column=0]{cellspace}
\setlength{\cellspacetoplimit}{3\tabcolsep}
\setlength{\cellspacebottomlimit}{\cellspacetoplimit}
\addparagraphcolumntypes{X}


\begin{document}
\theoremstyle{definition}
\newtheorem{theorem}{Theorem}[section]
\newtheorem{example}[theorem]{Example}
\lipsum[1-4]
\begin{example}
    We present the examples of t-norm and t-conorm using a table as follows.
    \begin{xltabular}{\textwidth}{|0{X}|>{$}0c<{$}|>{$}0c<{$}|}
        \caption{Example of t-norm and t-conorm}\\
        \hline
        \hfill \textbf{Name}\hfill \strut&\textbf{t-norm}&\textbf{t-conorm}\\
        \hline
        Standard intersection/ standard union&T_m(x,y)=\min(x,y)&C_m(x,y)=\max(x,y)\\
        \hline
        Bounded sum&T_b(x,y)=\max(0,x+y-1)&C_b(x,y)=\min(1,x+y)\\
        \hline
        Algebraic product/ Algebraic sum&T_p(x,y)=xy&C_p(x,y)=x+y-xy\\
        \hline
        Drastic&T_D(x,y)=
        \begin{cases}
            y&\text{if }x=1\\
            x&\text{if }y=1\\
            0&\text{otherwise}
        \end{cases}
        &
        C_D(x,y)=
        \begin{cases}
            y&\text{if }x=0\\
            x&\text{if }y=0\\
            1&\text{otherwise}
        \end{cases}
        
        \\
        \hline
        Nilpotent minimum/ Nilpotent maximum&T_{nM}(x,y)=
        \begin{cases}
            \min(x,y)&\text{if }x+y> 1\\
            0&\text{otherwise}
        \end{cases}&
        
        C_{nM}(x,y)=
        \begin{cases}
            \max(x,y)&\text{if }x+y<1\\
            1&\text{otherwise}
        \end{cases}
        
        \\
        \hline
        Hamacher product/ Einstein sum&T_{H_0}(x,y)=
        \begin{cases}
            0&\text{if }x=y=0\\
            \dfrac{xy}{x+y-xy}&\text{otherwise}
        \end{cases}&
        
        C_{H_2}(x,y)=\dfrac{x+y}{1+xy}
%        \label{tabelnorma}
        \\
        \hline
        
    \end{xltabular}
\end{example}
\end{document}

相关内容