答案1
编辑
我写了一篇新文章diagbox
包作为旧包的替代slashbox
。通过包绘制对角线更加现代pict2e
,并且更易于使用:
\documentclass{article}
\usepackage{diagbox}
\begin{document}
\begin{tabular}{|l|c|c|}\hline
\diagbox[width=10em]{Diag\\Column Head I}{Diag Column\\Head II}&
Second & Third \\ \hline
& foo & bar \\ \hline
\end{tabular}
\end{document}
更多信息请访问文件。
据我所知,表中的这个诊断单元有两个包。一个是slashbox
,另一个是makecell
,有时可能会产生更好的结果。以下是\diaghead
中的一个例子makecell
:
\documentclass{article}
\usepackage{makecell}
\begin{document}
\begin{tabular}{|l|c|c|}\hline
\diaghead{\theadfont Diag ColumnmnHead II}%
{Diag\\Column Head I}{Diag Column\\Head II}&
\thead{Second\\column}&\thead{Third\\column}\\ \hline
& foo & bar \\ \hline
\end{tabular}
\end{document}
pict2e
如果将包与slashbox
或一起使用,屏幕效果会更好makecell
。
答案2
您说得对,它们看起来不太好看。您可以使用两种不同的替代方案。第一种方案中,您可以使用副标题,如下面的代码中的第一个示例所示;第二种方案(我更喜欢)是假设您的读者是一个聪明的人,并完全忽略它们!通过适当的标题,您还可以确保您的信息清晰。
\documentclass{article}
\usepackage{slashbox,booktabs,amsmath}
\pagestyle{empty}
\begin{document}
\noindent
\begin{tabular}{|l||*{5}{c|}}\hline
\backslashbox{Room}{Date}
&\makebox[3em]{5/31}&\makebox[3em]{6/1}&\makebox[3em]{6/2}
&\makebox[3em]{6/3}&\makebox[3em]{6/4}\\\hline\hline
Meeting Room &&&&&\\\hline
Auditorium &&&&&\\\hline
Seminar Room &&&&&\\\hline
\end{tabular}
\bigskip
\begin{table}[htbp]
\begin{tabular}{llllll}
\toprule
\textbf{Date} &\makebox[3em]{5/31}&\makebox[3em]{6/1}&\makebox[3em]{6/2}
&\makebox[3em]{6/3}&\makebox[3em]{6/4}\\
\midrule
\textbf{Room} &&&&&\\
Meeting Room &&&&&\\
Auditorium &&&&&\\
Seminar Room &&&&&\\
\bottomrule
\end{tabular}
\caption{Room availability \textit{vs} dates.}
\end{table}
\bigskip
\begin{table}[htbp]
\begin{tabular}{llllll}
\toprule
~&\makebox[3em]{5/31}&\makebox[3em]{6/1}&\makebox[3em]{6/2}
&\makebox[3em]{6/3}&\makebox[3em]{6/4}\\
\midrule
Meeting Room &&&&&\\
Auditorium &&&&&\\
Seminar Room &&&&&\\
\bottomrule
\end{tabular}
\caption{Room availability \textit{vs} dates.}
\end{table}
\end{document}
答案3
当条目\backslashbox
非常小时,这是一个问题。插入一些空格,一切都会好起来,顺便说一下,始终加载 pict2e,它会扩展默认线段。
\documentclass{article}
\usepackage{slashbox,pict2e}
\pagestyle{empty}
\begin{document}
\noindent
\begin{tabular}{|r||*{5}{c|}}\hline
\backslashbox{Room~}{Date~~}
& 5/31& 6/1 & 6/2 & 6/3 & 6/4 \\\hline
Meeting Room &&&&& \\\hline
Auditorium &&&&& \\\hline
Seminar Room &&&&& \\\hline
\end{tabular}
\end{document}