我需要一个这种格式的表格:
我需要使用 tabularx。我已经尝试了一些方法,但不起作用……我一直收到错误消息“!缺少数字,视为零。”
\documentclass{scrartcl}
\usepackage{tabularx}
\begin{document}
\begin{tabularx}{\textwidth}{ >{\centering\arraybackslash}p{1cm} | X | p{0.5cm} | >{\centering\arraybackslash}X | p{0.5cm} > {\centering\arraybackslash}X | p{0.5cm} }
\multirow{2}{*}{\textbf{Code}} & \multicolumn{2}{c}{\multirow{2}{}{\textbf{Richtige Bewertung}}} & \multicolumn{4}{c}{\textbf{Falsche Bewertung}} \\ \cline{4-7}
& & \multicolumn{2}{c}{\textbf{False Negatives}} & \multicolumn{2}{c}{\textbf{False Positives}} \\ \hline\hline
$\boldsymbol{A_1}$ & \StrokeFive\StrokeFive\StrokeTwo (12) & & & & & \\ \hline
$\boldsymbol{A_2}$ & & & & & & \\ \hline
$\boldsymbol{B_1}$ & & & & & & \\ \hline
$\boldsymbol{B_2}$ & & & & & & \\ \hline
$\boldsymbol{C_1}$ & & & & & & \\ \hline
$\boldsymbol{C_2}$ & & & & & & \\ \hline
$\boldsymbol{D_1}$ & & & & & & \\ \hline
$\boldsymbol{D_2}$ & & & & & & \\
\end{tabularx}
\end{document}
有人能帮我吗?提前谢谢您。丹尼尔
答案1
|
您忘记了表格声明中的 许多垂直线。
另外,您必须记住,如果您使用\multicolumn
,您将重新定义列的外观,包括垂直条。在这种情况下,您必须重复定义垂直条。
接下来,您缺少一些重要的软件包,例如multirow
,使\multirow
命令正常工作。ifsym
带有选项的软件包[misc]
可以使命令正常\StrokeFive
工作。
您应该考虑使用>{$}...<{$}
魔法,以避免$
在第一列重复插入。
我找不到该命令的包\boldsymbol
。我用\mathbf
which替换了它可能是相同的。
第一个例子:
\documentclass{scrartcl}
\usepackage{tabularx}
\usepackage{multirow}
\usepackage[misc]{ifsym} % for \StrokeFive
\begin{document}
\begin{tabularx}{\textwidth}{ |% <-- was missing!
>{\centering\arraybackslash}p{1cm} |
X |
p{0.5cm} |
>{\centering\arraybackslash}X |
p{0.5cm} | % <-- bar missing
> {\centering\arraybackslash}X |
p{0.5cm} | % <--- bar missing
}
\hline
\textbf{Code}
& \multicolumn{2}{c|}{\textbf{Richtige Bewertung}}
% & \multicolumn{2}{c}{ \multirow{2}{}{\textbf{Richtige Bewertung}}}
& \multicolumn{4}{c|}{\textbf{Falsche Bewertung}} \\
\cline{4-7}
& \multicolumn{2}{c|}{}
& \multicolumn{2}{c|}{\textbf{False Negatives}}
& \multicolumn{2}{c|}{\textbf{False Positives}} \\
\hline %% in your example was only one line!
$\mathbf{A_1}$ & \StrokeFive\StrokeFive\StrokeTwo (12) & & & & & \\ \hline
$\mathbf{A_2}$ & & & & & & \\ \hline
$\mathbf{B_1}$ & & & & & & \\ \hline
$\mathbf{B_2}$ & & & & & & \\ \hline
$\mathbf{C_1}$ & & & & & & \\ \hline
$\mathbf{C_2}$ & & & & & & \\ \hline
$\mathbf{D_1}$ & & & & & & \\ \hline
$\mathbf{D_2}$ & & & & & & \\ \hline
\end{tabularx}
\end{document}
第二个例子,用来>{$}...<{$}
节省输入:
\documentclass{scrartcl}
\usepackage{tabularx}
\usepackage{multirow}
\usepackage[misc]{ifsym} % for \StrokeFive
\begin{document}
\begin{tabularx}{\textwidth}{ |% <-- was missing!
>{\centering\arraybackslash $}p{1cm} <{$} | % <---- added math mode
% magic here!
X |
p{0.5cm} |
>{\centering\arraybackslash}X |
p{0.5cm} | % <-- bar missing
> {\centering\arraybackslash}X |
p{0.5cm} | % <--- bar missing
}
\hline
\multicolumn{1}{|c}{\textbf{Code}} % \multicolumn gets rid of math
% mode here!
& \multicolumn{2}{c|}{\textbf{Richtige Bewertung}}
% & \multicolumn{2}{c}{ \multirow{2}{}{\textbf{Richtige Bewertung}}}
& \multicolumn{4}{c|}{\textbf{Falsche Bewertung}} \\
\cline{4-7}
& \multicolumn{2}{c|}{}
& \multicolumn{2}{c|}{\textbf{False Negatives}}
& \multicolumn{2}{c|}{\textbf{False Positives}} \\
\hline %% in your example was only one line!
\mathbf{A_1} & \StrokeFive\StrokeFive\StrokeTwo (12) & & & & & \\ \hline
\mathbf{A_2} & & & & & & \\ \hline
\mathbf{B_1} & & & & & & \\ \hline
\mathbf{B_2} & & & & & & \\ \hline
\mathbf{C_1} & & & & & & \\ \hline
\mathbf{C_2} & & & & & & \\ \hline
\mathbf{D_1} & & & & & & \\ \hline
\mathbf{D_2} & & & & & & \\ \hline
\end{tabularx}
\end{document}
两个示例的结果: