表格单元格行未整齐对齐

表格单元格行未整齐对齐

我正在尝试制作一个小表格,但只绘制了某些单元格线。我遵循了在其他地方找到的一般代码大纲(本文档的“同时在两个方向上跨越”部分:http://en.wikibooks.org/wiki/LaTeX/Tables),但当我编译时,定义单元格的线的末端“悬垂” - 它们不完全匹配。(免责声明:我不确定这是绘制此表的最佳方法,但这是我想到的。)以下是代码:

\documentclass{beamer}
\usepackage{multirow}
\begin{document} 
\centering
\begin{tabular}{ccc|c|}
& & \multicolumn{2}{c}{$Y$} \\ 
\cline{3-4}
& & \multicolumn{1}{|c|}{1} & 2  \\
\cline{2-4}
\multicolumn{1}{c}{\multirow{2}{*}{$T$}} &
\multicolumn{1}{|c|}{1} & $q_{11}$ & $q_{12}$ \\
\cline{2-4}
\multicolumn{1}{c}{} &
\multicolumn{1}{|c|}{2} & $q_{21}$ & $q_{22}$ \\ 
\cline{2-4}
\end{tabular}
\end{document}

在此处输入图片描述

不管我是在 Windows PC 上使用 TeXnicCenter 还是在 Mac 上使用 TeXShop 进行编译,都会发生这种情况。不管我是在程序内编译后查看 PDF,还是单独使用 Adob​​e 打开,表格看起来都不太好。

答案1

在评论中,您说示例中的线条看起来很磨损,但我无法调试它(尽管最常见的原因是在最后一行之后\\和之前有代码\end{tabular},这会产生虚假的未完成的最后一行,因此垂直线会垂下来。

但乳胶表中的规则总是正确的列的边缘(第一列除外,它有两个规则),因此在使用时,\multicolumn除第一列外,应始终在右侧添加规则,而不要将其添加到左侧,否则,通常垂直规则将不会对齐。

\documentclass{beamer}
\usepackage{multirow}
\begin{document} 
\centering

$\begin{array}{c|c|c|c|}
\multicolumn{2}{c}{}& \multicolumn{2}{c}{Y} \\ 
\cline{3-4}
\multicolumn{1}{c}{}&& 1 & 2  \\
\cline{2-4}
\multirow{2}{*}{T} &
1& q_{11} & q_{12} \\
\cline{2-4}
&
2 & q_{21} & q_{22} \\ 
\cline{2-4}
\end{array}$
\end{document}

在此处输入图片描述

答案2

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

\documentclass{beamer}
\usepackage{nicematrix}

\begin{document}

$\begin{NiceArray}{ccc}[first-row,first-col,corners=NW,hvlines]
&   & \Block{1-2}{Y}  \\
&   & 1      & 2      \\
\Block{2-1}{T}
& 1 & q_{11} & q_{12} \\
& 2 & q_{21} & q_{22} 
\end{NiceArray}$

\end{document}

第一个代码的输出

如果您希望所有列的宽度相同,则可以使用键columns-width=auto

\documentclass{beamer}
\usepackage{nicematrix}

\begin{document}

$\begin{NiceArray}{ccc}%
  [first-row,first-col,corners=NW,hvlines,columns-width=auto]
&   & \Block{1-2}{Y}  \\
&   & 1      & 2      \\
\Block{2-1}{T}
& 1 & q_{11} & q_{12} \\
& 2 & q_{21} & q_{22} 
\end{NiceArray}$

\end{document}

第二段代码的输出

相关内容