我正在尝试制作一个表格,但缺少一些垂直线。有人能帮我看看错误吗?
\documentclass[11pt]{article}
\usepackage[utf8]{inputenc}
\usepackage{dsfont}
\parindent0em
\usepackage{graphicx}
\usepackage{amsmath}
\usepackage{multirow}
\begin{document}
\begin{tabular}{c|c|c|c|c|c|c|c|}
\cline{2-8} & \multicolumn{1}{c|}{Generacion} & Nombre & Simbolo & Masa(eV) & Espin & Carga($e$) & Color \\ \cline{1-8}
\multicolumn{1}{ |c| }{\multirow{3}{*}{Quarks} } & \multirow{2}{*}{1a} & UP & 2 & 0 & 1 &5& 5\\
& \multicolumn{1}{ |c| }{} & UP & 2 & 0 & 1 &5& 5\\ \cline{2-8}
\multicolumn{1}{ |c| }{}& \multirow{2}{*}{2a} & UP & 2 & 0 & 1 &5& 5\\
&\multicolumn{1}{ |c| }{} & UP & 2 & 0 & 1 &5& 5\\ \cline{2-8}
\multicolumn{1}{ |c| }{} & \multirow{2}{*}{3a} & UP & 2 & 0 & 1 &5& 5\\
&\multicolumn{1}{ |c| }{} & UP & 2 & 0 & 1 &5& 5\\ \cline{1-8}
\cline{1-8}
\multicolumn{1}{ |c| }{\multirow{3}{*}{Leptones} } & \multirow{2}{*}{1a} & UP & 2 & 0 & 1 &5& 5\\
& & UP & 2 & 0 & 1 &5& 5\\ \cline{2-8}
\multicolumn{1}{ |c| }{} & \multirow{2}{*}{2a} & UP & 2 & 0 & 1 &5& 5\\
& & UP & 2 & 0 & 1 &5& 5\\ \cline{2-8}
\multicolumn{1}{ |c| }{} & \multirow{2}{*}{3a} & UP & 2 & 0 & 1 &5& 5\\
& & UP & 2 & 0 & 1 &5& 5\\ \cline{1-8}
\cline{1-8}
\multicolumn{2}{|c|}{\multirow{5}{*}{Bosones}} & UP & 2 & 0 & 1 &5& 5\\
\multicolumn{2}{|c|}{} & UP & 2 & 0 & 1 &5& 5\\
\multicolumn{2}{|c|}{} & UP & 2 & 0 & 1 &5& 5\\
\multicolumn{2}{|c|}{} & UP & 2 & 0 & 1 &5& 5\\ \cline{3-8}
\multicolumn{2}{|c|}{} & UP & 2 & 0 & 1 &5& 5\\ \cline{3-8}
\cline{1-8}
\end{tabular}
\end{document}
谢谢
答案1
您的帖子中没有提到的一个重要问题是表格太宽以适应文本块。可以通过以下方法解决此问题:(i) 将单元放在单独行中的两个标题单元格中,以及 (ii) 将\tabcolsep
控制列间空白量的参数 的值减少三分之一(从6pt
到4pt
)。
表格代码有点混乱,希望你不介意我的批评。它可以通过以下方式大大简化:(a) 通过以下方式设置结构
\begin{tabular}{|*{8}{c|}}
(b) 删除大量\multicolumn{1}{ |c| }{}
指令。还请用 替换所有\cline{1-8}
指令\hline
并删除三条冗余\cline
指令。
\documentclass[11pt]{article}
\usepackage[utf8]{inputenc}
\usepackage{dsfont}
\parindent0em
\usepackage{multirow,array}
\begin{document}
\setlength\tabcolsep{4pt} % default value: 6pt
\begin{tabular}{|*{8}{c|}}
\cline{2-8}
\multicolumn{1}{c|}{}& Generacion & Nombre & Simbolo & Masa & Espin & Carga & Color \\
\multicolumn{1}{c|}{}& & & & (eV) & ($e$) & & \\
\hline
\multirow{3}{*}{Quarks} & \multirow{2}{*}{1a}
& UP & 2 & 0 & 1 &5& 5\\
& & UP & 2 & 0 & 1 &5& 5\\
\cline{2-8}
& \multirow{2}{*}{2a} & UP & 2 & 0 & 1 &5& 5\\
& & UP & 2 & 0 & 1 &5& 5\\
\cline{2-8}
& \multirow{2}{*}{3a} & UP & 2 & 0 & 1 &5& 5\\
& & UP & 2 & 0 & 1 &5& 5\\
\hline
\multirow{3}{*}{Leptones} & \multirow{2}{*}{1a}
& UP & 2 & 0 & 1 &5& 5\\
& & UP & 2 & 0 & 1 &5& 5\\
\cline{2-8}
& \multirow{2}{*}{2a} & UP & 2 & 0 & 1 &5& 5\\
& & UP & 2 & 0 & 1 &5& 5\\
\cline{2-8}
& \multirow{2}{*}{3a} & UP & 2 & 0 & 1 &5& 5\\
& & UP & 2 & 0 & 1 &5& 5\\
\hline
\multicolumn{2}{|c|}{\multirow{5}{*}{Bosones}}
& UP & 2 & 0 & 1 &5& 5\\
\multicolumn{2}{|c|}{} & UP & 2 & 0 & 1 &5& 5\\
\multicolumn{2}{|c|}{} & UP & 2 & 0 & 1 &5& 5\\
\multicolumn{2}{|c|}{} & UP & 2 & 0 & 1 &5& 5\\
\cline{3-8}
\multicolumn{2}{|c|}{} & UP & 2 & 0 & 1 &5& 5\\
\hline
\end{tabular}
\end{document}
可选:所有这些垂直线和水平线不是有助于提高表格的可读性和可理解性;我认为这两个标准对您的工作很重要。删除所有垂直线,用\cline
一些(垂直)空白替换说明,并使用规则绘制宏(\toprule
、\midrule
和\bottomrule
)书签包给你以下的外观——我希望你会同意它看起来至少和上面的表格一样好:
\documentclass[11pt]{article}
\usepackage[utf8]{inputenc}
\usepackage{dsfont}
\parindent0em
\usepackage{multirow,array,booktabs}
\begin{document}
\setlength\tabcolsep{4pt}
\begin{tabular}{@{}l*{7}{c}@{}}
\toprule
& Generacion & Nombre & Simbolo & Masa & Espin & Carga & Color \\
& & & & (eV) & ($e$) & & \\
\midrule
\multirow{3}{*}{Quarks} & \multirow{2}{*}{1a} & UP & 2 & 0 & 1 &5& 5\\
& & UP & 2 & 0 & 1 &5& 5\\ \addlinespace
& \multirow{2}{*}{2a} & UP & 2 & 0 & 1 &5& 5\\
& & UP & 2 & 0 & 1 &5& 5\\ \addlinespace
& \multirow{2}{*}{3a} & UP & 2 & 0 & 1 &5& 5\\
&{} & UP & 2 & 0 & 1 &5& 5\\
\midrule
\multirow{3}{*}{Leptones} & \multirow{2}{*}{1a} & UP & 2 & 0 & 1 &5& 5\\
& & UP & 2 & 0 & 1 &5& 5\\
\addlinespace
& \multirow{2}{*}{2a} & UP & 2 & 0 & 1 &5& 5\\
& & UP & 2 & 0 & 1 &5& 5\\
\addlinespace
& \multirow{2}{*}{3a} & UP & 2 & 0 & 1 &5& 5\\
& & UP & 2 & 0 & 1 &5& 5\\
\midrule
\multicolumn{2}{c}{\multirow{5}{*}{Bosones}} & UP & 2 & 0 & 1 &5& 5\\
& & UP & 2 & 0 & 1 &5& 5\\
& & UP & 2 & 0 & 1 &5& 5\\
& & UP & 2 & 0 & 1 &5& 5\\
\addlinespace
& & UP & 2 & 0 & 1 &5& 5\\
\bottomrule
\end{tabular}
\end{document}
答案2
使用
\begin{tabular}{|c|c|c|c|c|c|c|c|}
如果您确实想要垂直线 - 我们不推荐这样做 - 并删除不需要的\multicolumn{1}{|c|}{}
s。
\documentclass[11pt]{article}
\usepackage[utf8]{inputenc}
\usepackage{multirow}
\usepackage{parskip}
\begin{document}
\begin{tabular}{|c|c|c|c|c|c|c|c|}
\cline{2-8} \multicolumn{1}{c}{}& \multicolumn{1}{|c|}{Generacion} & Nombre & Simbolo & Masa(eV) & Espin & Carga($e$) & Color \\ \cline{1-8}
\multirow{3}{*}{Quarks} & \multirow{2}{*}{1a} & UP & 2 & 0 & 1 &5& 5\\
& & UP & 2 & 0 & 1 &5& 5\\ \cline{2-8}
& \multirow{2}{*}{2a} & UP & 2 & 0 & 1 &5& 5\\
& & UP & 2 & 0 & 1 &5& 5\\ \cline{2-8}
& \multirow{2}{*}{3a} & UP & 2 & 0 & 1 &5& 5\\
& & UP & 2 & 0 & 1 &5& 5\\ \cline{1-8}
\multirow{3}{*}{Leptones} & \multirow{2}{*}{1a} & UP & 2 & 0 & 1 &5& 5\\
& & UP & 2 & 0 & 1 &5& 5\\ \cline{2-8}
& \multirow{2}{*}{2a} & UP & 2 & 0 & 1 &5& 5\\
& & UP & 2 & 0 & 1 &5& 5\\ \cline{2-8}
& \multirow{2}{*}{3a} & UP & 2 & 0 & 1 &5& 5\\
& & UP & 2 & 0 & 1 &5& 5\\ \cline{1-8}
\multicolumn{2}{|c|}{\multirow{5}{*}{Bosones}} & UP & 2 & 0 & 1 &5& 5\\
\multicolumn{2}{|c|}{} & UP & 2 & 0 & 1 &5& 5\\
\multicolumn{2}{|c|}{} & UP & 2 & 0 & 1 &5& 5\\
\multicolumn{2}{|c|}{} & UP & 2 & 0 & 1 &5& 5\\ \cline{3-8}
\multicolumn{2}{|c|}{} & UP & 2 & 0 & 1 &5& 5\\ \cline{3-8}
\end{tabular}
\end{document}
不过,我还是建议你重新考虑一下你的演讲。我强烈建议你看一下booktabs
有关创建专业质量表格的文档。
快速改造:
\documentclass[11pt]{article}
\usepackage[utf8]{inputenc}
\usepackage{multirow,booktabs}
\usepackage{parskip}
\begin{document}
\begin{tabular}{*{8}{c}}
\toprule & Generacion & Nombre & Simbolo & Masa(eV) & Espin & Carga($e$) & Color \\\midrule
\multirow{3}{*}{Quarks} & \multirow{2}{*}{1a} & UP & 2 & 0 & 1 &5& 5\\
& & UP & 2 & 0 & 1 &5& 5\\ \cmidrule{2-8}
& \multirow{2}{*}{2a} & UP & 2 & 0 & 1 &5& 5\\
& & UP & 2 & 0 & 1 &5& 5\\ \cmidrule{2-8}
& \multirow{2}{*}{3a} & UP & 2 & 0 & 1 &5& 5\\
& & UP & 2 & 0 & 1 &5& 5\\
\midrule
\multirow{3}{*}{Leptones} & \multirow{2}{*}{1a} & UP & 2 & 0 & 1 &5& 5\\
& & UP & 2 & 0 & 1 &5& 5\\ \cmidrule{2-8}
& \multirow{2}{*}{2a} & UP & 2 & 0 & 1 &5& 5\\
& & UP & 2 & 0 & 1 &5& 5\\ \cmidrule{2-8}
& \multirow{2}{*}{3a} & UP & 2 & 0 & 1 &5& 5\\
& & UP & 2 & 0 & 1 &5& 5\\
\midrule
\multicolumn{2}{c}{\multirow{5}{*}{Bosones}} & UP & 2 & 0 & 1 &5& 5\\
& & UP & 2 & 0 & 1 &5& 5\\
& & UP & 2 & 0 & 1 &5& 5\\
& & UP & 2 & 0 & 1 &5& 5\\ \cmidrule{3-8}
& & UP & 2 & 0 & 1 &5& 5\\
\bottomrule
\end{tabular}
答案3
给你。以下代码为该表提出了两个版本。
– 首先,具有水平和所有垂直规则的表格,略有改进(第一列的单元格垂直居中)。
– 然后提出一个没有垂直规则、水平规则少得多的解决方案,基于booktabs
,在我看来,这会产生更简单的代码,而且看起来更好看:
\documentclass[11pt]{article}
\usepackage[utf8]{inputenc}
\parindent0em
\usepackage{graphicx}
\usepackage{amsmath}
\usepackage{multirow, makecell}
\usepackage{cellspace, booktabs}
\setlength\cellspacetoplimit{5pt}
%\setlength\cellspacebottomlimit{4pt}
\begin{document}
\begin{tabular}{|c|c|Sc|c|c|c|c|c|}
\cline{2-8}
\multicolumn{1}{c|}{} & \multicolumn{1}{c|}{Generacion} & Nombre & Simbolo & Masa(eV) & Espin & Carga($e$) & Color \\ \cline{1-8}
\multicolumn{1}{|c|}{\multirowcell{6}[-5pt]{Quarks}} & \multirow{2}{*}{1a} & UP & 2 & 0 & 1 & 5 & 5 \\
& \multicolumn{1}{ c| }{} & UP & 2 & 0 & 1 & 5 & 5 \\ \cline{2-8}
& \multirow{2}{*}{2a} & UP & 2 & 0 & 1 & 5 & 5 \\
& \multicolumn{1}{c |}{} & UP & 2 & 0 & 1 & 5 & 5 \\ \cline{2-8}
& \multirow{2}{*}{3a} & UP & 2 & 0 & 1 & 5 & 5 \\
& \multicolumn{1}{c| }{} & UP & 2 & 0 & 1 & 5 & 5 \\ \cline{1-8}
\cline{1-8}
\multicolumn{1}{ |c| }{\multirow{6}{*}[-5pt]{Leptones} } & \multirow{2}{*}{1a} & UP & 2 & 0 & 1 & 5 & 5 \\
& & UP & 2 & 0 & 1 & 5 & 5 \\ \cline{2-8}
& \multirow{2}{*}{2a} & UP & 2 & 0 & 1 & 5 & 5 \\
& & UP & 2 & 0 & 1 & 5 & 5 \\ \cline{2-8}
& \multirow{2}{*}{3a} & UP & 2 & 0 & 1 & 5 & 5 \\
& & UP & 2 & 0 & 1 & 5 & 5 \\ \cline{1-8}
\cline{1-8}
\multicolumn{2}{|c|}{\multirow{5}{*}[-5pt]{Bosones}} & UP & 2 & 0 & 1 &5& 5\\
\multicolumn{2}{|c|}{} & UP & 2 & 0 & 1 &5& 5\\
\multicolumn{2}{|c|}{} & UP & 2 & 0 & 1 &5& 5\\
\multicolumn{2}{|c|}{} & UP & 2 & 0 & 1 &5& 5\\ \cline{3-8}
\multicolumn{2}{|c|}{} & UP & 2 & 0 & 1 &5& 5\\ \cline{3-8}
\cline{1-8}
\end{tabular}
\begin{tabular}{l*{7}{c}}
\cmidrule[\heavyrulewidth]{2-8}
\multicolumn{1}{c}{} & \multicolumn{1}{c}{Generacion} & Nombre & Simbolo & Masa(eV) & Espin & Carga($e$) & Color \\
\cmidrule(lr){2-8}
\multicolumn{1}{c}{\multirowcell{6}[-5pt]{Quarks}} & \multirow{2}{*}{1a} & UP & 2 & 0 & 1 & 5 & 5 \\
& & UP & 2 & 0 & 1 & 5 & 5 \\
\addlinespace
& \multirow{2}{*}{2a} & UP & 2 & 0 & 1 & 5 & 5 \\
& & UP & 2 & 0 & 1 & 5 & 5 \\
\addlinespace
& \multirow{2}{*}{3a} & UP & 2 & 0 & 1 & 5 & 5 \\
& & UP & 2 & 0 & 1 & 5 & 5 \\
\cmidrule(lr){2-8}
%
\multicolumn{1}{c}{\multirow{6}{*}[-5pt]{Leptones}} & \multirow{2}{*}{1a} & UP & 2 & 0 & 1 & 5 & 5 \\
& & UP & 2 & 0 & 1 & 5 & 5 \\
\addlinespace
& \multirow{2}{*}{2a} & UP & 2 & 0 & 1 & 5 & 5 \\
& & UP & 2 & 0 & 1 & 5 & 5 \\
\addlinespace
& \multirow{2}{*}{3a} & UP & 2 & 0 & 1 & 5 & 5 \\
& & UP & 2 & 0 & 1 & 5 & 5 \\
\cmidrule(lr){2-8}
%
\multicolumn{2}{c}{\multirow{5}{*}[-5pt]{Bosones}} & UP & 2 & 0 & 1 &5& 5\\
& & UP & 2 & 0 & 1 & 5 & 5 \\
& & UP & 2 & 0 & 1 & 5 & 5 \\
& & UP & 2 & 0 & 1 & 5 & 5 \\
\cmidrule(lr){3-8}
& & UP & 2 & 0 & 1 & 5 & 5 \\
\cmidrule[\heavyrulewidth]{3-8}
\end{tabular}
\end{document}