如何在表格中使用 \begin{cases}?

如何在表格中使用 \begin{cases}?
\documentclass[10pt,a4paper]{article}
\usepackage{booktabs}
\usepackage{amsmath}
\usepackage{multirow}
\usepackage[width=18.5cm, height=26cm]{geometry}


\begin{document}
\begin{table}
\centering
\begin{tabular}{p{4cm} p{4cm} p{4cm} p{4cm}}
        
\hline \hline 
\bf{ssssssss} & \bf{sssssssssss} & \bf{ssssssssss}& \bf{sssssss}  \\ 
            
\midrule    
            
\multirow{1}{*}{equation}  & alooo & pyaaaaz& 
            \[
            %l=
            \begin{cases} 
                a &\text{when sth }\\
                b &\text{when sth else} \\
                c &\text{when elsewhere;}
            \end{cases}
            \] \\
            
\multirow{1}{*}{xxxxxxx}&yyyyyyy&zzzzzz& 
            \[
            %l=
            \begin{cases} 
                a &\text{when sth }\\
                b &\text{when sth else} \\
                c &\text{when elsewhere;}
            \end{cases}
            \] \\
            
\multirow{1}{*}{xxxxxxx}& 
            \[
            %l=
            \begin{cases} 
                a &\text{when sth }\\
                b &\text{when sth else} \\
                c &\text{when elsewhere;}
            \end{cases}
            \]&yyyyyyy&zzzzzz \\
            
            
        \hline \hline
        \end{tabular}
    \end{table}
\end{document}

为此,我使用 \begin{cases} 得到了一个表格,但不是一个完美的表格(附在此处)。

在此处输入图片描述

我想要一个带有 \begin{cases} 的完美表格,如 table2(附于此处)。在此处输入图片描述

我不知道什么地方出了问题。

答案1

您不能\[...\]在未声明为p列的表格单元格中使用。但您不需要它,它还需要猜测宽度:只需在l列中使用简单的内联数学模式即可。

\multirow声明根本没有任何作用(或者可能造成伤害)。 也\bf已被弃用了大约 30 年,并且绝不采取了争论。

避免双重规则并注意虚假空间。

最后,我添加了一些来\addlinespace更好地分隔那些高行。

\documentclass[10pt,a4paper]{article}
\usepackage{booktabs}
\usepackage{amsmath}
\usepackage[
  width=18.5cm,
  height=26cm,
  heightrounded
]{geometry}


\begin{document}

\begin{table}[htp]
\centering

\begin{tabular}{@{} l l l l @{}}
\toprule
\textbf{ssssssss} & \textbf{sssssssssss} & \textbf{ssssssssss}& \textbf{sssssss}  \\ 
\midrule
equation  & alooo & pyaaaaz &
            $
            %l=
            \begin{cases} 
                a &\text{when sth}\\
                b &\text{when sth else} \\
                c &\text{when elsewhere;}
            \end{cases}
            $
\\ \addlinespace
xxxxxxx & yyyyyyy & zzzzzz &
            $
            %l=
            \begin{cases} 
                a &\text{when sth}\\
                b &\text{when sth else} \\
                c &\text{when elsewhere;}
            \end{cases}
            $
\\ \addlinespace
xxxxxxx &
            $
            %l=
            \begin{cases} 
                a &\text{when sth}\\
                b &\text{when sth else} \\
                c &\text{when elsewhere;}
            \end{cases}
            $
& yyyyyyy & zzzzzz
\\
\bottomrule
\end{tabular}

\caption{Please add a caption}

\end{table}

\end{document}

在此处输入图片描述

如果您不需要标题,那么您也不需要table:如果您希望它处于固定位置,只需将其放置tabularcenter环境中(但最好让它浮动并添加标题)。

答案2

您正在使用 displaymath 环境\[Displayed math\],该环境将内容置于一行的中心。这就是您看到的间距。

用内联数学代替$inline math$

\documentclass[10pt,a4paper]{article}
\usepackage{booktabs}
\usepackage{amsmath}
\usepackage{multirow}
\usepackage[width=18.5cm, height=26cm]{geometry}


\begin{document}
\begin{table}
\centering
\begin{tabular}{p{4cm} p{4cm} p{4cm} p{4cm}}
        
\toprule \toprule 
\bf{ssssssss} & \bf{sssssssssss} & \bf{ssssssssss}& \bf{sssssss}  \\ 
            
\midrule    
            
equation  & alooo & pyaaaaz& 
            $
            %l=
            \begin{cases} 
                a &\text{when sth }\\
                b &\text{when sth else} \\
                c &\text{when elsewhere;}
            \end{cases}
            $ \\
            
xxxxxxx&yyyyyyy&zzzzzz& 
            $
            %l=
            \begin{cases} 
                a &\text{when sth }\\
                b &\text{when sth else} \\
                c &\text{when elsewhere;}
            \end{cases}
            $ \\
            
xxxxxxx& 
            $
            %l=
            \begin{cases} 
                a &\text{when sth }\\
                b &\text{when sth else} \\
                c &\text{when elsewhere;}
            \end{cases}
            $&yyyyyyy&zzzzzz \\
            
            
        \bottomrule \bottomrule
        \end{tabular}
    \end{table}
\end{document}

我删除了该multirow命令,因为他们没有在表中添加任何内容。

相关内容