排版无单位数字和无数字单位

排版无单位数字和无数字单位

我正在使用该siunitx包来排版我的数字,但有时我发现数字没有单位(当单位不在附近时)和单位没有数字的情况。例如:

The bird can fly 40 to 50 km per hour.

The data in the table above uses kg.

排版这些内容的首选方法是什么?

The bird can fly $40$ to $\SI{50}{\kilo\meter\per\hour}$.

The bird can fly \num{40} to \SI{50}{\kilo\meter\per\hour}.

The bird can fly \SI{40}{} to \SI{50}{\kilo\meter\per\hour}.

The data in the table above uses kg.

The data in the table above uses \SI{}{\kilo\gram}.

如果发现在输出中实现视觉一致性和正确性比拥有一致的、上下文智能的代码更重要。

答案1

要排版没有数字的单位,您可以使用\unit{<unit>}(或\si- 在 v2 中使用 - 注意小写)。

要排版没有单位的数字,可以使用\num{<number>}

用单位排版数值范围的数学正确方法是将单位包含在每个数字中。这就是命令\qtyrange{<lower>}{<upper>}(或SIrange)的作用。如果您不想重复单位,可以设置[range-units = single]

请注意,可以使用缩写(例如 )来访问最常用的\km单位\kilo\metre

\documentclass{article}
\usepackage{siunitx}

\begin{document}
The bird can fly \qtyrange{40}{50}{\km\per\hour}.

The bird can fly \qtyrange[range-units=single]{40}{50}{\km\per\hour}.

The data table above uses \unit{\kg}.

There  are \num{12345} birds in the sky.
\end{document}

相关内容