\documentclass{article}
\usepackage{rotating}
\begin{document}
\begin{table}[h]
\centering
\begin{tabular}{|c|c|c|c|}
\hline
&
\begin{sideways}ABCD\end{sideways} &
\begin{sideways}EFGH\end{sideways} &
\begin{sideways}IJKL\end{sideways} \\ \hline
AA & 2 & 3 & 4 \\
BB & 2 & 3 & 4 \\
CC & 2 & 3 & 4 \\
DD & 2 & 3 & 4 \\ \hline
\end{tabular}
\caption{Tmp}
\label{tab:tmp}
\end{table}
\end{document}
我怎样才能删除如下图所示的线条?
另外,我怎样才能将第一条水平线稍微向上提升一点?最终结果应该是:
答案1
我认为有必要采取四种不同的措施:
- 用 删除垂直线
\multicolumn{1}{c|}{}
。 - 用 删除水平线(段)
\cline{2-4}
。 - 在顶部最长的标签上添加一点空间。
- 如果您不想要表格大部分的“内部”垂直线,我会专门在表格头部添加它们。
结果:
\begin{tabular}{|c|ccc|}
\cline{2-4}
\multicolumn{1}{c|}{}&
\multicolumn{1}{c|}{\begin{sideways}ABCD\hspace*{1mm}\end{sideways}} &
\multicolumn{1}{c|}{\begin{sideways}EFGH\end{sideways}} &
\begin{sideways}IJKL\end{sideways} \\ \hline
AA & 2 & 3 & 4 \\
BB & 2 & 3 & 4 \\
CC & 2 & 3 & 4 \\
DD & 2 & 3 & 4 \\ \hline
\end{tabular}
答案2
这是一个使用 的解决方案tabularray
。
\documentclass{article}
\usepackage{graphicx}
\usepackage{xcolor}
\usepackage{tabularray}
\begin{document}
\begin{tblr}{
colspec = {*{4}{c}},
vline{1} = {2-4}{0.9pt},
vline{2,5} = 0.9pt,
vline{3-4} = {1}{0.9pt},
hline{1} = {2-5}{0.9pt},
hline{2,5} = 0.9pt,
cell{1}{2-4} = {cmd={\rotatebox[origin=c]{90}}}
}
& ABCD
& EFGH
& IJKL \\
AA & 2 & 3 & 4 \\
BB & 2 & 3 & 4 \\
CC & 2 & 3 & 4 \\
\end{tblr}
\end{document}
答案3
您可以使用\multicolumn
和\cline
来获得所需的输出:
\documentclass{article}
\usepackage{rotating}
\begin{document}
\begin{table}[h]
\centering
\begin{tabular}{|c|ccc|}
\cline{2-4}
\multicolumn{1}{c}{}&
\multicolumn{1}{|c|}{\begin{sideways}ABCD\end{sideways}} &
\multicolumn{1}{c|}{\begin{sideways}EFGH\end{sideways}} &
\multicolumn{1}{c|}{\begin{sideways}IJKL\end{sideways}} \\ \hline
AA & 2 & 3 & 4 \\
BB & 2 & 3 & 4 \\
CC & 2 & 3 & 4 \\
DD & 2 & 3 & 4 \\ \hline
\end{tabular}
\caption{Tmp}
\label{tab:tmp}
\end{table}
\end{document}
我认为你也可以完全省略标题中的垂直线,以及顶部、左侧和右侧的边框,从而
\begin{tabular}{c|ccc}
\multicolumn{1}{c}{}&
\multicolumn{1}{|c}{\begin{sideways}ABCD\end{sideways}} &
\multicolumn{1}{c}{\begin{sideways}EFGH\end{sideways}} &
\multicolumn{1}{c}{\begin{sideways}IJKL\end{sideways}} \\ \hline
AA & 2 & 3 & 4 \\
BB & 2 & 3 & 4 \\
CC & 2 & 3 & 4 \\
DD & 2 & 3 & 4 \\ \hline
\end{tabular}
答案4
使用。在该环境中,您有一个键,它绘制除块(由 指定)和空角落(由键 指定)之外的{NiceTabular}
所有规则。nicematrix
hvlines
\Block
corners
\documentclass{article}
\usepackage{nicematrix}
\begin{document}
\begin{NiceTabular}{cccc}[hvlines,corners=NW] % NW = north-west
\RowStyle{\rotate}
& ABCD \;
& EFGH
& IJKL \\
\Block{3-1}{}
AA & \Block{3-3}{}
2 & 3 & 4 \\
BB & 2 & 3 & 4 \\
CC & 2 & 3 & 4 \\
\end{NiceTabular}
\end{document}