多列表格格式问题

多列表格格式问题

我在这个网站上读到了一些关于如何构建表格的非常好的答案。下面我展示了我所写的内容。

\documentclass[11pt]{article}
\usepackage{float}
\usepackage{multirow}
\usepackage{cite}

\begin{document}
\begin{table}[h]
  \centering
  \begin{tabular}{c|c|c|c|c|c|c|c|c|} 
    \multicolumn{4}{c}{}  
    & \multicolumn{4}{c}{$n$} \\ \cline{3-8}
    \multicolumn{2}{c|}{} 
    & $0$ & $1$ & $2$ & $3$ \\ \cline{2-8}
    \multirow{4}{*}{$\ell$} 
    & $0$ & a & b & c & d \\ \cline{2-8}    
    & $1$ & a & b & c & d \\ \cline{2-8}
    & $2$ & a & b & c & d \\ \cline{2-8}
    & $3$ & a & b & c & d \\ \cline{2-8}
  \end{tabular}
  \caption{test table.}
  \label{tab: test}
\end{table}
\end{document}

结果是桌子

我不明白最后一列出了什么问题,为什么会出现这样的问题,而且它没有像其他列那样显示。任何帮助我都会很感激。另外,如果不太麻烦的话,我希望有一个最小的例子来将其推广到更大的矩阵。

提前致谢!

答案1

在以下示例中,我删除了多余的列说明符(您总共有 9 个,但您的表只需要其中 6 个)。我相应地调整了命令\cline以适应相应的列号,并将其替换\multicolumn{4}{c}{}\multicolumn{2}{c}{}。我还删除了不必要的数学模式。

在此处输入图片描述

\documentclass[11pt]{article}
\usepackage{float}
\usepackage{multirow}
\usepackage{cite}

\begin{document}
\begin{table}[h]
  \centering
  \begin{tabular}{c|c|c|c|c|c|} 
    \multicolumn{2}{c}{}     & \multicolumn{4}{c}{$n$} \\ \cline{3-6}
    \multicolumn{2}{c|}{}        & 0 & 1 & 2 & 3       \\ \cline{2-6}
    \multirow{4}{*}{$\ell$}  & 0 & a & b & c & d       \\ \cline{2-6}  
                             & 1 & a & b & c & d       \\ \cline{2-6}
                             & 2 & a & b & c & d       \\ \cline{2-6}
                             & 3 & a & b & c & d       \\ \cline{2-6}
  \end{tabular}
  \caption{test table.}
  \label{tab: test}
\end{table}
\end{document}

如果您想将此解决方案应用于更大的表格,则必须添加相应数量的列说明符,修改\multicolumn{4}{c}{$n$}\multirow{4}{*}{$\ell$}命令以正确居中相应的标题,并\cline根据新的最大列数调整命令。

以下是更大表的相应代码,其中进行了上述更改:

\documentclass[11pt]{article}
\usepackage{float}
\usepackage{multirow}
\usepackage{cite}

\begin{document}

\begin{table}[h]
  \centering
  \begin{tabular}{c|c|c|c|c|c|c|c|} 
    \multicolumn{2}{c}{}     & \multicolumn{6}{c}{$n$}    \\ \cline{3-8}
    \multicolumn{2}{c|}{}        & 0 & 1 & 2 & 3 & 4 & 5  \\ \cline{2-8}
    \multirow{6}{*}{$\ell$}  & 0 & a & b & c & d & e & f  \\ \cline{2-8}  
                             & 1 & a & b & c & d & e & f  \\ \cline{2-8}
                             & 2 & a & b & c & d & e & f  \\ \cline{2-8}
                             & 3 & a & b & c & d & e & f  \\ \cline{2-8}
                             & 4 & a & b & c & d & e & f  \\ \cline{2-8}
                             & 5 & a & b & c & d & e & f  \\ \cline{2-8}
  \end{tabular}
  \caption{test table.}
  \label{tab: test}
\end{table}
\end{document}

答案2

您可以使用 轻松制作该{NiceTabular}nicematrix

\documentclass[11pt]{article}
\usepackage{float}
\usepackage{nicematrix}

\begin{document}
\begin{table}[h]
\centering
\begin{NiceTabular}{ccccc}[first-col,first-row,hvlines,corners=NW]
                    &   & \Block{1-4}{$n$} \\ 
                    &   & 0 & 1 & 2 & 3    \\ 
\Block{4-1}{$\ell$} & 0 & a & b & c & d    \\ 
                    & 1 & a & b & c & d    \\ 
                    & 2 & a & b & c & d    \\ 
                    & 3 & a & b & c & d    \\ 
\end{NiceTabular}
\caption{test table.}
\label{tab: test}
\end{table}
\end{document}

上述代码的输出

相关内容