数学重音与上下标注

在 math mode 中,可以在字母上方放一个小标记来补充含义:\hat 表示估计量,\dot 表示时间导数,\bar 表示平均或共轭,\vec 表示向量。需要记住两点:多数 accent 都是 固定宽度,只按单个符号设计,放在多个字母上也不会伸长;少数命令有 可伸缩对应形式,会随宽度加长,例如 \hat\widehat。本页是 math accent 的快速索引,依次列出固定宽度 accent、与伸缩形式的对比,以及如何给 ij 加 accent。括号、下方 accent、任意符号叠放等更深入内容放在“上下装饰”中。

数式 accent 的用法

Math accent 要写在 math mode 内,形式是像 \hat{x} 这样 以一个字母为参数的命令。直接写在正文(text mode)中会报错,或得到另一类文本 accent,所以应先进入 math mode:$\hat{x}$。这里列出的一字母 accent 都是 LaTeX 标准命令,如下表所示,不需要额外 package;只有三点、四点的 \dddot\ddddot 需要 amsmath。

这些标记本身没有固定含义,而是遵循 各领域的惯例。在物理中,\dot{x} 表示时间导数;在统计中,\hat{\theta} 表示参数估计量,\bar{x} 表示样本均值;在复数中,\bar{z} 表示共轭。简言之,本页负责选择 *哪一种* 标记;下一页负责说明如何 *叠放* 标记,或把标记覆盖到整个表达式上。

固定宽度 accent(速查)

下表列出以单个符号大小放置的固定宽度 accent。即使参数有多个字符,它们也不会伸长,而是居中放在第一个符号上方。由于本站没有 math renderer,“外观”列用文字描述各标记;要看实际输出,请在本地编译。

命令外观典型用途
\hat尖帽(^,circumflex)估计量、单位向量
\tilde波形(~,tilde)近似值、变换后的量
\bar短横线(macron)平均、复共轭
\vec小的右箭头向量量
\dot一个点一阶时间导数
\ddot两个点(类似 dieresis)二阶时间导数
\dddot三个点(需要 amsmath)三阶时间导数
\ddddot四个点(需要 amsmath)四阶时间导数
\acuteacute accent(右上斜线 ´)语言学;偶尔用于数学
\gravegrave accent(右下斜线 `)语言学;偶尔用于数学
\checkcheck(háček,v 形 ˇ)几何与代数中的标记
\brevebreve(碗形 ˘)几何与代数中的标记
\mathring小圆圈(ring ˚)几何符号;偶尔用于单位
latex
\[
  \dot{x}, \quad \ddot{x}, \quad \bar{x}, \quad \hat{p},
  \quad \tilde{a}, \quad \vec{v}, \quad \check{s}, \quad \mathring{r}
\]

这些例子分别会排出:x 上的一个点和两个点、x 上的短横线、p 上的小尖帽、a 上的 tilde、v 上的小右箭头、s 上的 v 形,以及 r 上的小圆圈。命令名 区分大小写,参数放在花括号中;单个字母时可以像 \hat x 那样省略花括号,但写成 \hat{x} 更安全也更易读。

固定宽度 ↔ 伸缩形式

有些 accent 有会 随参数宽度伸长 的对应形式。\hat{x} 只是在一个字母上放小尖帽,而 \widehat{xyz} 会把尖帽横向展开,覆盖整个 xyz。经验法则是:覆盖整个表达式用伸缩形式,单个字母用固定宽度形式。下表给出对应关系。

固定宽度(一个字母)伸缩型(整个表达式)备注
\hat\widehat标准 LaTeX;尖帽会变宽以适应
\tilde\widetilde标准 LaTeX;tilde 会变宽以适应
\bar\overline标准 LaTeX;横线按内容宽度伸长
\vec\overrightarrow标准 LaTeX;右箭头按宽度伸长
latex
\[
  \hat{x} \;\text{vs.}\; \widehat{xyz}, \qquad
  \bar{z} \;\text{vs.}\; \overline{x + y}, \qquad
  \vec{a} \;\text{vs.}\; \overrightarrow{AB}
\]

有两点要注意。第一,在标准 LaTeX 中 真正的可伸缩 accent 只有 \widehat\widetilde\overline\overrightarrow 严格说不是 accent,而是放在参数上方的横线和箭头,但因为会伸长,所以放在这里一起看。第二,\widehat\widetilde 是从几个预绘大小中选择的,遇到特别长的表达式时可能不够宽而显得别扭;这种情况下可考虑 \overline

最容易误用的是 \vec。写 \vec{AB} 并不会伸长箭头;实际效果只是把一个小箭头放在大约 B 的上方,不会读成从 AB 的有向线段。若要箭头跨过两个端点,应使用 \overrightarrow{AB}。关于双向箭头、下方箭头等伸缩形式的更多内容,请参见“上下装饰”。

给 i 和 j 加 accent(去掉原点)

ij 加 accent 时,字母本身的点会与 accent 相撞,看起来很差。因此传统做法是以 无点形式 \imath(dotless i)和 \jmath(dotless j) 为底。比如 \hat{\imath} 会把尖帽干净地放在无点 i 上方。二者都是标准 math-mode 命令,不需要额外 package。

latex
\[
  \hat{\imath}, \quad \vec{\jmath}, \quad \dot{\imath}
\]

还要注意,双重 accent 通常不能漂亮地叠放。像 \hat{\vec{x}} 这样叠两层时,上方标记往往会漂浮或偏离中心。若只是想增加点数,用 \ddot 或 amsmath 的 \dddot\ddddot;若确实需要复杂叠放,最好用下一页介绍的 \overset 明确构造。amsmath 的 \dddot\ddddot 有一个已知问题:在上标或下标中使用时大小和位置可能不正确;加载 mathdots package 可修正这两个问题。