表格环境中的垂直文本方向(多行)

表格环境中的垂直文本方向(多行)

我想创建一个像图轴一样标记的表格,即 y 轴标签的垂直方向。这就是我所拥有的

\begin{tabular}{rc|c|c|c|}
&&\multicolumn{3}{|c|}{Category A}\\
&&little&some&a lot\\
&little&&&\\
Category B&some&&\\
&a lot&&&\\\hline
\end{tabular}

但我希望文本“类别 B”垂直跨越第 3 行至第 5 行,而不是水平跨越第 4 行。

我如何实现这个目标?

答案1

在此处输入图片描述

根据您的具体需要,您可能希望调整间距,但如下所示:

在这里我在表格中添加了额外内容\hline以使间距更清晰,同时标题也按表格行的深度向后退了一步以使其完全适合(第一个版本错了)如果需要,可以在个别情况下调整此间距以获得更好的视觉间距。

在此处输入图片描述

\documentclass{article}
\usepackage{graphicx}
\makeatletter
\newsavebox\zzz
\def\mystrut{%
\dimen@\wd\zzz
\divide\dimen@\thr@@
\advance\dimen@-\dp\@arstrutbox
\rule\z@\dimen@}

\def\rotatezzz{%
\rotatebox{90}{\rlap{\kern-\dp\@arstrutbox\usebox\zzz}}}

\makeatother
\begin{document}




\savebox\zzz{Category B}
\begin{tabular}{rc|c|c|c|}
&&\multicolumn{3}{|c|}{Category A}\\
&&little&some&a lot\\\hline
\mystrut&little&&&\\
\mystrut&some&&&\\
\mystrut\rotatezzz&a lot&&&\\\hline
\end{tabular}


\end{document}

相关内容