我想控制siunitx
列之间的间距,但是在第三列和第四列之间插入!{\hspace{1ex}}
会导致第三行的灰色不连续,
while<{\hspace{1ex}}
对输出没有任何影响。
\documentclass[border=5mm]{standalone}
\usepackage{tabularx,siunitx,multicol,ragged2e}
\usepackage[table]{xcolor}
\newcolumntype{Y}{>{\Centering}X}
\newcolumntype{L}{>{\RaggedRight}X}
\newcolumntype{R}{>{\RaggedLeft}X}
\begin{document}
\setlength{\tabcolsep}{0pt}
\rowcolors{2}{gray!20}{}
\begin{tabularx}{1\linewidth}{
>{\hsize=1.3\hsize}L<{\hspace{1ex}}
>{\hsize=0.7\hsize}Y<{\hspace{1ex}}
S[table-format=3.1, round-precision=1, table-column-width = 0.2\linewidth, table-number-alignment=right]<{\hspace{1ex}}
s[table-unit-alignment = left, table-column-width = 0.2\linewidth]
}
Parameter & Symbol & \multicolumn{2}{c}{Value}\\
Inertia & $J_M$ & 0.6 & \kilogram\m\squared\\
Inertia & $J_M$ & 0.6 & \kilogram\m\squared\\
\end{tabularx}
\end{document}
答案1
对于S
类型列,您可以使用键table-space-text-post
将它们向右扩大,而不是<{\hspace{1ex}}
(放在\hspace{1ex}
单元格内容之后):
\documentclass[border=5mm]{standalone}
\usepackage{tabularx,siunitx,multicol,ragged2e}
\usepackage[table]{xcolor}
\newcolumntype{Y}{>{\Centering}X}
\newcolumntype{L}{>{\RaggedRight}X}
\newcolumntype{R}{>{\RaggedLeft}X}
\begin{document}
\setlength{\tabcolsep}{0pt}
\rowcolors{2}{gray!20}{}
\begin{tabularx}{1\linewidth}{
>{\hsize=1.3\hsize}L<{\hspace{1ex}}
>{\hsize=0.7\hsize}Y<{\hspace{1ex}}
S[table-format=3.1, round-precision=1, table-column-width = 0.2\linewidth, table-number-alignment=right, table-space-text-post=\hspace{1ex}]
s[table-unit-alignment = left, table-column-width = 0.2\linewidth]
}
Parameter & Symbol & \multicolumn{2}{c}{Value}\\
Inertia & $J_M$ & 0.6 & \kilogram\m\squared\\
Inertia & $J_M$ & 0.6 & \kilogram\m\squared\\
Inertia & $J_M$ & 0 & \kilogram\m\squared\\
\end{tabularx}
\end{document}
答案2
对于一个简单的解决方案,考虑到最后的规范,我建议一个简单的解决方案是在第一列和第二列之间添加一个固定宽度(2ex)的空列。我特意添加了两个(临时)垂直规则来帮助可视化这个空列的宽度:
\documentclass[border=5mm]{standalone}
\usepackage{tabularx, siunitx, multicol, ragged2e}
\usepackage[table]{xcolor}
\newcolumntype{Y}{>{\Centering}X}
\newcolumntype{L}{>{\RaggedRight}X}
\newcolumntype{R}{>{\RaggedLeft}X}
\begin{document}
\rowcolors{2}{gray!20}{}
\begin{tabularx}{\linewidth}{
>{\hsize=1.3\hsize}L|@{}p{2ex}@{}|
>{\hsize=0.7\hsize}Y
S[table-format=3.1, round-precision=1, table-column-width = 0.2\linewidth, table-number-alignment=right]%
s[table-unit-alignment = left, table-column-width = 0.2\linewidth]
}
Parameter & & Symbol & \multicolumn{2}{c}{Value}\\
Inertia & & $J_M$ & 0.6 & \kilogram\m\squared\\
Inertia & & $J_M$ & 0.6 & \kilogram\m\squared\\
\end{tabularx}
\end{document}