使用以下 MWE:
\documentclass[12pt,a4paper]{report}
\usepackage[lmargin=3.81cm,tmargin=2.54cm,rmargin=2.54cm,bmargin=2.52cm]{geometry}
\usepackage{booktabs}
\usepackage{siunitx}
\usepackage{multirow}
\begin{document}
\begin{table}[H]
\caption{Power levels of Background loads}
\parskip-5pt
\centering
\begin{tabular}{llS[table-format=4.0]}
\toprule
\multicolumn{2}{c}{\textbf{Loads}} & \textbf{Power Consumption} (\si{kWh})\\
\midrule
\textbf{Background} & Fans (Slide) & 350\--- 600\--- 750 \\
& Dehumidifier (Therm) & 500\--- 620\--- 785 \\
& Refrigerator (Therm) & 480\--- 580\--- 725 \\
& Heater (Therm) & 750\--- 1000\--- 1500 \\
\bottomrule
\end{tabular}
\label{powertable2}
\end{table}
\end{document}
我得到下表:
但是当我删除破折号时,我得到了:
正如您在第二张图片中看到的那样,数字居中。我希望即使使用破折号,数字也能保持居中\---
。为什么添加破折号后它们会向右缩进?
答案1
该S
列仅解析一个数字,您将需要使用三S
列,它们之间用破折号隔开,例如
\begin{tabular}{llS@{--}S@{--}S}
但问题是,宽列标题Power Consumption (kWh)
(即使与之结合\multicolumn
)对于三个非常小的列不能很好地工作。
对于这样简单的价值观,这可能更容易。
代码
\documentclass[12pt,a4paper]{report}
\usepackage[lmargin=3.81cm,tmargin=2.54cm,rmargin=2.54cm,bmargin=2.52cm]{geometry}
\usepackage{booktabs}
\usepackage{siunitx}
\usepackage{multirow}
\newcommand*{\0}{\hphantom{0}}
\begin{document}
\begin{table}[H]
\caption{Power levels of Background loads}
% \parskip-5pt
\centering
\begin{tabular}{llc}
\toprule
\multicolumn{2}{c}{\textbf{Loads}} & \textbf{Power Consumption} (\si{kWh}) \\ \midrule
\textbf{Background} & Fans (Slide) & 350--\0600--\0750 \\
& Dehumidifier (Therm) & 500--\0620--\0785 \\
& Refrigerator (Therm) & 480--\0580--\0725 \\
& Heater (Therm) & 750--1000--1500 \\ \bottomrule
\end{tabular}
\label{powertable2}
\end{table}
\end{document}