删除使用 siunitx 设置的表格列周围的空间

删除使用 siunitx 设置的表格列周围的空间

好的,首先,这张桌子看上去很糟糕,急需帮助。

S但我真正想知道的是如何消除环境中设置的列之间的一些额外的空白tabular

\documentclass{article}
\usepackage{amsmath,amssymb}
\usepackage{array}
\usepackage{siunitx}
\begin{document}

Areas:\par
\sisetup{table-figures-decimal=4,table-auto-round,table-number-alignment=center}
\renewcommand{\arraystretch}{1.5}%%
\begin{tabular}{l
                >{$}r<{=$}
                S[table-figures-decimal=1,table-space-text-pre=]
                >{$}r<{=$}
                S}%'
   Area of region I:   & 4                    & 4    & \dfrac{1}{2}\cdot 2\cdot 4=         & 4           \\
   Area of region II:  & 8                    & 8    & 1\times 8                           & 8           \\
   Area of region III: & 6-3.5                & 2.5  & 2 \times 3 - \dfrac{1}{2}(1.5)^2\pi & 2.465708265 \\
   Area of region IV   & 35                   & 35   & 5\times 7                           & 35          \\
   Area of region V:   & 6.5                  & 6.5  & \dfrac{1}{2} (2)^2\pi               & 6.283185307 \\\hline
   Total               & \multicolumn{1}{c}{} & 56.0 &                                     & 55.78990357
\end{tabular}

\end{document}

在此处输入图片描述

顺便说一句,我\multicolumn在最后一行使用 来防止等号出现在那里。有没有更好的办法可以暂时消除列之间的材料设置?因为这实际上是第二个问题,如果这样更好的话,我可以单独发布它。

答案1

你可以table-alignment=<choice>在中间使用一些小的字距调整,例如

@{\!}S[table-figures-decimal=1,table-space-text-pre=,table-alignment=left]

代码:

\documentclass{article}
\usepackage{amsmath,amssymb}
\usepackage{array}
\usepackage{siunitx}
\begin{document}

Areas:\par
\sisetup{table-figures-decimal=4,table-auto-round,table-number-alignment=center}
\renewcommand{\arraystretch}{1.5}%%
\begin{tabular}{l
                >{$}r<{=$}
                @{\!}S[table-figures-decimal=1,table-space-text-pre=,table-alignment=left]
                >{$}r<{=$}
                @{\!}S[table-alignment=left]}%'
   Area of region I:   & 4                    & 4    & \dfrac{1}{2}\cdot 2\cdot 4         & 4           \\
   Area of region II:  & 8                    & 8    & 1\times 8                           & 8           \\
   Area of region III: & 6-3.5                & 2.5  & 2 \times 3 - \dfrac{1}{2}(1.5)^2\pi & 2.465708265 \\
   Area of region IV   & 35                   & 35   & 5\times 7                           & 35          \\
   Area of region V:   & 6.5                  & 6.5  & \dfrac{1}{2} (2)^2\pi               & 6.283185307 \\\hline
   Total               & \multicolumn{1}{c}{} & 56.0 &                                     & 55.78990357
\end{tabular}

\end{document}

在此处输入图片描述

在 中按您的喜好调整字距@{\!}

对于你的第二个问题,我认为这\multicolumn是最好的答案。但有人可能有更好的办法。

答案2

我不太确定您是否想将数字与小数点对齐。但您可以按照以下方法改进表格:

\documentclass{article}
\usepackage{amsmath,amssymb}
\usepackage{array,booktabs}
\usepackage{siunitx}
\begin{document}

Areas:\par
\renewcommand{\arraystretch}{1.5}
\sisetup{table-figures-decimal=4,table-auto-round}
\begin{tabular}{
  @{}
  l
  >{$}r<{={}$}
  @{}
  S[table-format=2.1]
  @{\hspace{3em}}
  >{$}r<{={}$}
  @{}
  S[table-format=2.4]
  @{}
}%'
Area of region I:   & 4     & 4    & \dfrac{1}{2}\cdot 2\cdot 4          & 4           \\
Area of region II:  & 8     & 8    & 1\times 8                           & 8           \\
Area of region III: & 6-3.5 & 2.5  & 2 \times 3 - \dfrac{1}{2}(1.5)^2\pi & 2.465708265 \\
Area of region IV   & 35    & 35   & 5\times 7                           & 35          \\
Area of region V:   & 6.5   & 6.5  & \dfrac{1}{2} (2)^2\pi               & 6.283185307 \\
\midrule
Total               &       & 56.0 &                                     & 55.78990357
\end{tabular}

\end{document}

在此处输入图片描述


这是小数点未对齐的不同版本;请注意,它需要包collcell

%% add in the preamble
\usepackage{collcell}
\newcommand{\bnum}[1]{\num[round-mode=places,round-precision=4]{#1}}

%% the table
\begin{tabular}{
  @{}
  l
  >{$}r<{={}$}
  @{}
  >{\collectcell\num}l<{\endcollectcell}
  @{\hspace{3em}}
  >{$}r<{={}$}
  @{}
  >{\collectcell\bnum}l<{\endcollectcell}
  @{}
}%'
Area of region I:   & 4     & 4    & \dfrac{1}{2}\cdot 2\cdot 4         & 4           \\
Area of region II:  & 8     & 8    & 1\cdot 8                           & 8           \\
Area of region III: & 6-3.5 & 2.5  & 2 \cdot 3 - \dfrac{1}{2}(1.5)^2\pi & 2.465708265 \\
Area of region IV   & 35    & 35   & 5\cdot 7                           & 35          \\
Area of region V:   & 6.5   & 6.5  & \dfrac{1}{2} (2)^2\pi              & 6.283185307 \\
\midrule
Total               &       & 56.0 &                                    & 55.78990357
\end{tabular}

在此处输入图片描述

相关内容