![Как нарисовать горизонтальную линию определенной ширины в табличной среде?](https://rvso.com/image/286996/%D0%9A%D0%B0%D0%BA%20%D0%BD%D0%B0%D1%80%D0%B8%D1%81%D0%BE%D0%B2%D0%B0%D1%82%D1%8C%20%D0%B3%D0%BE%D1%80%D0%B8%D0%B7%D0%BE%D0%BD%D1%82%D0%B0%D0%BB%D1%8C%D0%BD%D1%83%D1%8E%20%D0%BB%D0%B8%D0%BD%D0%B8%D1%8E%20%D0%BE%D0%BF%D1%80%D0%B5%D0%B4%D0%B5%D0%BB%D0%B5%D0%BD%D0%BD%D0%BE%D0%B9%20%D1%88%D0%B8%D1%80%D0%B8%D0%BD%D1%8B%20%D0%B2%20%D1%82%D0%B0%D0%B1%D0%BB%D0%B8%D1%87%D0%BD%D0%BE%D0%B9%20%D1%81%D1%80%D0%B5%D0%B4%D0%B5%3F.png)
Я пытаюсь составить таблицу с некоторыми числами и общим результатом, как показано ниже:
Age Female Male Total
----------------------------
Under 10 5 8 13
10-30 57 61 118
30-60 5 1 6
Over 60 3 0 3
--- --- ---
TOTAL 70 70 140
----------------------------
Эти три ---
линии представляют собой своего рода подчеркивание, охватывающее половину строки.
Как мне нарисовать или указать длину табличной линии?
решение1
Команда \cmidrule
имеет необязательный аргумент в скобках, где можно указать сторону, которую необходимо уменьшить.
Вот как можно создать вашу таблицу
\documentclass{article}
\usepackage{booktabs}
\begin{document}
\begin{tabular}{lrrr}
Age & Female & Male & Total \\
\midrule
Under 10 & 5 & 8 & 13 \\
10-30 & 57 & 61 & 118 \\
30-60 & 5 & 1 & 6 \\
Over 60 & 3 & 0 & 3 \\
\cmidrule(l){2-2}\cmidrule(l){3-3}\cmidrule(l){4-4}
TOTAL & 70 & 70 & 140 \\
\bottomrule
\end{tabular}
\end{document}
Вот еще одна версия с фиксированными столбцами, где длина \cmidrule
уменьшена на фиксированное значение:
\documentclass{article}
\usepackage{booktabs,array}
\newcolumntype{R}[1]{>{\raggedleft\arraybackslash}m{#1}}
\begin{document}
\begin{tabular}{l*{3}{R{1.2cm}}}
Age & Female & Male & Total \\
\midrule
Under 10 & 5 & 8 & 13 \\
10-30 & 57 & 61 & 118 \\
30-60 & 5 & 1 & 6 \\
Over 60 & 3 & 0 & 3 \\
\cmidrule(l{.7cm}){2-2}\cmidrule(l{.7cm}){3-3}\cmidrule(l{.7cm}){4-4}
TOTAL & 70 & 70 & 140 \\
\bottomrule
\end{tabular}
\end{document}
решение2
Следующий пример добавляет правило над общей суммой. Правило удлиняется с обеих сторон на величину\fboxsep
. MWE взято из karlkoeller'sотвечать.
\documentclass{article}
\usepackage{booktabs}
\newcommand*{\oline}[1]{%
\kern-\fboxsep
\vbox{%
\hrule
\kern1ex
\hbox{%
\kern\fboxsep
#1%
\kern\fboxsep
}%
}%
\kern-\fboxsep
}
\begin{document}
\begin{tabular}{lrrr}
Age & Female & Male & Total \\
\midrule
Under 10 & 5 & 8 & 13 \\
10--30 & 57 & 61 & 118 \\
30--60 & 5 & 1 & 6 \\
Over 60 & 3 & 0 & 3 \\
TOTAL & \oline{70} & \oline{70} & \oline{140} \\
\bottomrule
\end{tabular}
\end{document}