我想突出显示我拥有的表格中的几列。我使用 是booktabs
为了访问更好的水平规则,但这也带来了副作用,即在水平规则周围引入了额外的(无色)空间。替换\toprule
和\bottomrule
可以消除这个不需要的/无色的空间---我有什么办法可以说服xcolor
( colortbl
) 也为这个空间着色吗?
平均能量损失
\documentclass{article}
\usepackage{siunitx} % Formatting for units
\usepackage{booktabs} % Better formatting for tables
\usepackage[usenames,dvipsnames,svgnames,table]{xcolor} % Use colour!
\begin{document}
\renewcommand{\arraystretch}{1.1}
\sisetup{table-format=1.4,table-sign-mantissa}
\setlength{\tabcolsep}{3pt}
\begin{tabular}{@{}lS[table-format=2,table-sign-mantissa]S[table-format=2.4,table-sign-mantissa]S*{2}{>{\columncolor{pink}}S}*{5}{S}S[table-format=1,table-sign-mantissa]@{}}
\toprule
$x$ & -2 & -1.9 & -1.8 & -1.7 & -1.6 & -1.5 & -1.4 & -1.3 & -1.2 & -1.1 & -1\\
$\mathrm{f}(x)$ & -19 & -12.2610 & -6.8957 & -2.6986 & 0.5142 & 2.9063 & 4.6218 & 5.7871 & 6.5117 & 6.8895 & 7\\
\bottomrule
\end{tabular}
\end{document}
答案1
booktabs
正如您所注意到的,如果需要对整个列进行着色,那么包的宏绘制的规则就不能很好地发挥作用。
作为替代方案,您可以插入(印刷)支柱以保留\toprule
和产生的良好间距,\bottomrule
同时使整个单元格高度着色。指令\Tstrut
(“顶部支柱”的缩写)和\Bstrut
(“底部支柱”的缩写)可以插入给定行中的任何位置,但我建议您将它们插入行的开头;这样,就不容易忽略它们的存在。“顶部”支柱的高度和“底部”支柱的深度分别选择为紧密模仿\toprule
和产生的间距\bottomrule
。
\documentclass{article}
\usepackage[margin=1in,a4paper]{geometry} % set paper size and margins
\usepackage{siunitx} % Formatting for units
\sisetup{table-format=-1.4,table-sign-mantissa}
\usepackage{booktabs} % Nicely formatted table rules
\usepackage[usenames,dvipsnames,svgnames,table]{xcolor} % Use colour
\renewcommand{\arraystretch}{1.1}
\setlength{\tabcolsep}{3pt}
% Define "struts", as suggested by Claudio Beccari in TeX and TUG News, Vol. 2, 1993.
\newcommand\Tstrut{\rule{0pt}{3ex}} % "top" strut
\newcommand\Bstrut{\rule[-1.4ex]{0pt}{0pt}} % "bottom" strut
\newcommand{\TBstrut}{\Tstrut\Bstrut} % top&bottom struts
\begin{document}
\noindent
with \verb+\toprule+ and \verb+\bottomrule+
\noindent
\begin{tabular}{@{} l S[table-format=-2.0] S[table-format=-2.4]
S *{2}{>{\columncolor{pink}}S} *{5}{S} S[table-format=-1.0] @{}}
\toprule
$x$ & -2 & -1.9 & -1.8 & -1.7 & -1.6 & -1.5 & -1.4 & -1.3 & -1.2 & -1.1 & -1\\
$\mathrm{f}(x)$ & -19 & -12.2610 & -6.8957 & -2.6986 & 0.5142 & 2.9063 & 4.6218 & 5.7871 & 6.5117 & 6.8895 & 7\\
\bottomrule
\end{tabular}
\bigskip\noindent
with typographic struts and \verb+\hline+ directives:
\noindent
\begin{tabular}{@{} l S[table-format=-2.0] S[table-format=-2.4]
S *{2}{>{\columncolor{pink}}S} *{5}{S} S[table-format=-1.0] @{}}
\hline
\Tstrut$x$ & -2 & -1.9 & -1.8 & -1.7 & -1.6 & -1.5 & -1.4 & -1.3 & -1.2 & -1.1 & -1 \\
\Bstrut$\mathrm{f}(x)$ & -19 & -12.2610 & -6.8957 & -2.6986 & 0.5142 & 2.9063 & 4.6218 & 5.7871 & 6.5117 & 6.8895 & 7 \\
\hline
\end{tabular}
\end{document}
答案2
booktabs
用boldline
(用于可变宽度的水平线)和cellspace
(用于单元格的垂直填充)替换的解决方案:
\documentclass{article}
\usepackage{geometry}
\usepackage{siunitx} % Formatting for units
\usepackage[usenames,dvipsnames,svgnames,table]{xcolor} % Use colour!
\usepackage{cellspace, boldline}
\setlength\cellspacetoplimit{5pt}
\setlength\cellspacebottomlimit{2pt}
\begin{document}
\sisetup{table-format=1.4,table-sign-mantissa}
\setlength{\tabcolsep}{3pt}
\begin{tabular}{@{}ClS[table-format=2,table-sign-mantissa]S[table-format=2.4,table-sign-mantissa]S*{2}{>{\columncolor{pink}}S}*{5}{S}S[table-format=1,table-sign-mantissa]@{}}
\hlineB{2}
$x$ & -2 & -1.9 & -1.8 & -1.7 & -1.6 & -1.5 & -1.4 & -1.3 & -1.2 & -1.1 & -1\\
$\mathrm{f}(x)$ & -19 & -12.2610 & -6.8957 & -2.6986 & 0.5142 & 2.9063 & 4.6218 & 5.7871 & 6.5117 & 6.8895 & 7\\
\hlineB{2}
\end{tabular}
\end{document}