旋转表格中的文本,并将线放置在正确的位置

旋转表格中的文本,并将线放置在正确的位置

我有一张表格,其中第一行包含相当多的文本,然后其他每个单元格都相当小(最多一个或两个符号)。目前,我的代码如下所示:

\documentclass{standalone}
\usepackage{rotating}
\begin{document}
  \begin{tabular}{lrrrrrrrr}
  & \begin{rotate}{45}Better measurements\end{rotate} & \begin{rotate}{45}Theory\end{rotate} & \begin{rotate}{45}Intervals\end{rotate} 
  &\begin{rotate}{45} Ensembles\end{rotate} &\begin{rotate}{45}Training\end{rotate} & \begin{rotate}{45}Robustness\end{rotate} 
  & \begin{rotate}{45}Past Success\end{rotate} \\
  Imprecision & x & y & z & a & b & c & x \\
  Inaccuracy & x & y & z & a & b & c &x\\
  Deeper & x & y & z & a & b & c &x\\
  Parameter & x & y & z & a & b & c&x \\
  Structure & x & y & z & a & b & c &x \\
  Overfitting& x & y & z & a & b & c&x \\
  Discretisation & x & y & z & a & b & c &x\\
  Resolution & x & y & z & a & b & c &x\\
  Implementation & x & y & z & a & b & c&x \\
\end{tabular}
\end{document}

这使用环境rotatingturn。问题是环境turn没有为旋转的文本留出空间。(这很好,因为标签垂直“重叠”,这正是我想要的。但是,当我将其输入到更大的文档中时,标签会与上面的文本重叠。我可以手动添加 vspace,但这不是最佳选择。此外,当我尝试将hlines 放在顶部时,它们会穿过文本。(此外,我必须将环境放在顶行的每个表格单元格中,这不是很好)

是否有更好的包可以处理这些类型的表格?

答案1

\documentclass{article}
\usepackage{rotating}
\def\Rot#1#2{\rlap{\rotatebox{#1}{#2}~}}
\begin{document}

\hrulefill

\begin{tabular}{*9l}
  & \Rot{45}{Better measurements} & \Rot{45}{Theory} & \Rot{45}{Intervals} 
  & \Rot{45}{Ensembles} & \Rot{45}{Training} & \Rot{45}{Robustness} & \Rot{45}{Past Success} \\
  Imprecision & x & y & z & a & b & c & x \\
  Inaccuracy & x & y & z & a & b & c &x\\
  Deeper & x & y & z & a & b & c &x\\
  Parameter & x & y & z & a & b & c&x \\
  Structure & x & y & z & a & b & c &x \\
  Overfitting& x & y & z & a & b & c&x \\
  Discretisation & x & y & z & a & b & c &x\\
  Resolution & x & y & z & a & b & c &x\\
  Implementation & x & y & z & a & b & c&x \\
\end{tabular}

\end{document}

在此处输入图片描述

相关内容