代码的路

V2

2022/08/01阅读:38主题:默认主题

MarkDown公式指导手册

原文链接  

Markdown 公式指导手册


一、公式使用参考

1.如何插入公式

可使用行中公式放在文中与其它文字混编,或单独成行的独立公式。

(1)行中公式

可以用如下方法表示:

$ 表达式 $

例子:

$ J_\alpha(x) = \sum_{m=0}^\infty \frac{(-1)^m}{m! \Gamma (m + \alpha + 1)} {\left({ \frac{x}{2} }\right)}^{2m + \alpha} \text {,行内公式示例} $

显示:

(2)独立公式

可以用如下方法表示:

$$ 表达式 $$

例子:

$$ J_\alpha(x) = \sum_{m=0}^\infty \frac{(-1)^m}{m! \Gamma (m + \alpha + 1)} {\left({ \frac{x}{2} }\right)}^{2m + \alpha} \text{,独立公式示例} $$

显示:

(3)自动编号

公式可以用如下方法表示:

\begin{equation}
    表达式
    \label{eq:当前公式名}
\end{equation}

自动编号后的公式可在全文任意处使用 \eqref{eq:公式名} 语句引用。

例子:

$$ 在公式 \eqref{eq:sample} 中,我们看到了这个被自动编号的公式。$$
\begin{equation}
    E=mc^2 \text{,自动编号公式示例}
    \label{eq:sample}
\end{equation}

显示:

(4)手动编号

若需要手动编号,可在公式后使用 \tag{编号} 语句。

例子:

$$ J_\alpha(x) = \sum_{m=0}^\infty \frac{(-1)^m}{m! \Gamma (m + \alpha + 1)} {\left({ \frac{x}{2} }\right)}^{2m + \alpha} \text{,使用 \tag 手动编号} \tag{0.1} $$

显示:

(5)不自动编号

公式可以用如下方法表示:

\begin{equation*}
    表达式
\end{equation*}

显示:

2.如何输入上下标

^ 表示上标,_ 表示下标。如果上下标的内容多于一个字符,需要用 {} 将这些内容括成一个整体。 上下标可以嵌套,也可以同时使用。

  • 例子:
$$ x^{y^z}=(1+{\rm e}^x)^{-2xy^w} $$
  • 显示:

如果要在左右两边都有上下标,可以使用 \sideset 命令;也可以简单地在符号前面多打一个上下标,此时会以行内公式渲染。 本例内 \quad 均为空格符号,为方便公式格式对比而添加,请注意辨别。详见[在字符间加入空格](# 3在字符间加入空格)。

  • 例子:
$$ \sideset{^1_2}{^3_4}\bigotimes \quad or \quad {^1_2}\bigotimes {^3_4} $$
  • 显示:

3.如何输入括号和分隔符

()[]| 表示符号本身,使用 \{\} 来表示 {} 。当要显示大号的括号或分隔符时,要用 \left\right 命令。

一些特殊的括号:

输入 显示 输入 显示
\langle \rangle
\lceil \rceil
\lfloor \rfloor
\lbrace \rbrace
\lvert \rvert
\lVert \rVert

有时,我们需要在行内使用两个竖杠表示向量间的某种空间距离,可以这样写: \lVert \boldsymbol{X}_i - \boldsymbol{S}_j \rVert^2

  • 例子:
$$ f(x,y,z) = 3y^2z \left( 3+\frac{7x+5}{1+y^2} \right) $$
  • 显示:

有时要用 \left.\right. 进行匹配而不显示本身。

  • 例子:
$$ \left. \frac{{\rm d}u}{{\rm d}x} \right| _{x=0} $$
  • 显示:

4.如何输入分数

通常使用 \frac {分子} {分母} 来生成一个分数,分数可多层嵌套。 若分数只有一层,也可使用 分子 \over 分母 命令。 例内 \quad \mid \, 等均为空格或分隔符号,为方便公式格式对比而添加,请注意辨别。详见[在字符间加入空格](# 3在字符间加入空格)。

  • 例子:
$$ \frac{a-1}{b-1} \quad or \quad {a+1 \over b+1} $$
  • 显示:

当分式 仅有两个字符时 可直接输入 \frac ab 来快速生成一个

  • 例子:
$$ \frac 12,\frac 1a,\frac a2 \quad \mid \quad \text{2 letters only:} \quad \frac 12a \,, k\frac q{r^2} $$
  • 显示:

5.如何输入开方

使用 \sqrt [根指数,省略时为2] {被开方数} 命令输入开方。 本例内 \quad 均为空格符号,为方便公式格式对比而添加,请注意辨别。详见[在字符间加入空格](# 3在字符间加入空格)。

  • 例子:
$$ \sqrt{2} \quad or \quad \sqrt[n]{3} $$
  • 显示:

6.如何输入省略号

数学公式中常见的省略号有两种,\ldots 表示与 文本底线 对齐的省略号,\cdots 表示与 文本中线 对齐的省略号。

  • 例子:
$$ f(x_1,x_2,\underbrace{\ldots}_{\rm ldots} ,x_n) = x_1^2 + x_2^2 + \underbrace{\cdots}_{\rm cdots} + x_n^2 $$
  • 显示:

7.如何输入向量

使用 \vec{向量} 来自动产生一个向量。也可以使用 \overrightarrow 等命令自定义字母上方的符号。 例内 \quad \mid \, 等均为空格或分隔符号,为方便公式格式对比而添加,请注意辨别。详见[在字符间加入空格](# 3在字符间加入空格)。

  • 例子:
$$ \vec{a} \cdot \vec{b}=0 $$
  • 显示:
  • 例子:
$$ xy \text{ with arrows:} \quad \overleftarrow{xy} \; \mid \; \overleftrightarrow{xy} \; \mid \; \overrightarrow{xy} $$
  • 显示:

8.如何输入积分

使用 \int_积分下限^积分上限 {被积表达式} 来输入一个积分。

例子:

$$ \int_0^1 {x^2} \,{\rm d}x $$

显示:

本例中 \,{\rm d} 部分可省略,但加入能使式子更美观,详见[在字符间加入空格](# 3在字符间加入空格)及[如何进行字体转换](# 13如何进行字体转换)。

9.如何输入极限运算

使用 \lim_{变量 \to 表达式} 表达式 来输入一个极限。如有需求,可以更改 \to 符号至任意符号。

例子:

$$ \lim_{n \to \infty} \frac{1}{n(n+1)} \quad and \quad \lim_{x\leftarrow{示例}} \frac{1}{n(n+1)} $$

显示:

10.如何输入累加、累乘运算

使用 \sum_{下标表达式}^{上标表达式} {累加表达式} 来输入一个累加。与之类似,使用 \prod \bigcup \bigcap 来分别输入累乘、并集和交集,更多符号可参考“[其它特殊字符](# 12如何输入其它特殊字符)”。

此类符号在行内显示时上下标表达式将会移至右上角和右下角,如 \sum_{i=1}^n \frac{1}{i^2} 显示为

或在行内可使用 \sum\limits_{下标表达式}^{上标表达式} {累加表达式} 使上下标仍在正上正下方。 \sum\limits_{i=1}^n \frac{1}{i^2} 显示为

本例内 \quad 均为空格符号,为方便公式格式对比而添加,请注意辨别。详见[在字符间加入空格](# 3在字符间加入空格)。

  • 例子:
$$ \sum_{i=1}^n \frac{1}{i^2} \quad and \quad \prod_{i=1}^n \frac{1}{i^2} \quad and \quad \bigcup_{i=1}^{2} \Bbb{R} $$
  • 显示:

11.如何输入希腊字母

输入 \小写希腊字母英文全称\首字母大写希腊字母英文全称 来分别输入小写和大写希腊字母。 对于大写希腊字母与现有字母相同的,直接输入大写字母即可。

输入 显示 输入 显示 输入 显示 输入 显示
\alpha A \beta B
\gamma \Gamma \delta \Delta
\epsilon E \zeta Z
\eta H \theta \Theta
\iota I \kappa K
\lambda \Lambda \mu M
\nu N \xi \Xi
o O \pi \Pi
\rho P \sigma \Sigma
\tau T \upsilon \Upsilon
\phi \Phi \chi X
\psi \Psi \omega \Omega
\partial \nabla

部分字母有变量专用形式,以 \var- 开头。

小写形式 大写形式 变量形式 显示
\epsilon E \varepsilon
\theta \Theta \vartheta
\rho P \varrho
\sigma \Sigma \varsigma
\phi \Phi \varphi

12.如何输入其它特殊字符

(1).关系运算符

输入 显示 输入 显示 输入 显示 输入 显示
\pm \times \div \mid
\nmid \cdot \circ \ast
\odot \otimes \oplus \leq
\geq \neq \approx \equiv
\sum \prod \coprod \backslash

(2).集合运算符

输入 显示 输入 显示 输入 显示
\emptyset \in \notin
\subset \supset \subseteq
\supseteq \cap \cup
\vee \wedge \uplus
\top \bot \complement

(3).对数运算符

输入 显示 输入 显示 输入 显示
\log \lg \ln

(4).三角运算符

输入 显示 输入 显示 输入 显示
\backsim \cong \angle A
\sin \cos \tan
\csc \sec \cot

(5).微积分运算符

输入 显示 输入 显示 输入 显示
\int \iint \iiint
\partial \oint \prime
\lim \infty \nabla

(6).逻辑运算符

输入 显示 输入 显示 输入 显示
\because \therefore \neg
\forall \exists \not\subset
\not< \not> \not=
\vdash

(7).戴帽符号

输入 显示 输入 显示 输入 显示
\hat{xy} \widehat{xyz} \bar{y}
\tilde{xy} \widetilde{xyz} \acute{y}
\breve{y} \check{y} \grave{y}
\dot{x} \ddot{x} \dddot{x}

若需要在特定文字顶部\底部放置内容,可使用 \overset{顶部内容}{正常内容}\underset{底部内容}{正常内容} 命令。 例内 \qquad \quad \mid \; \, 等均为空格或分隔符号,为方便公式格式对比而添加,请注意辨别。详见[在字符间加入空格](# 3在字符间加入空格)。

  • 例子:
$$ \verb+\overset{above}{level}+ \qquad \overset{xx}{ABC} \;\; \mid \quad \overset{x^2}{\longmapsto}\ \, \mid \quad \overset{\bullet\circ\circ\bullet}{T} $$
  • 显示:
  • 例子:
$$ \verb+\underset{below}{level}+ \qquad \underset{xx}{ABC} \;\; \mid \quad \underset{x^2}{\longmapsto}\ \, \mid \quad \underset{\bullet\circ\circ\bullet}{T} $$
  • 显示:

此命令可叠加嵌套使用,生成类似化学反应式的多重条件符号, 如 \overset{H_2}{\underset{1300℃}{\Longleftrightarrow}}

\overset{Surface/bulk}{\underset{diffusion}{\longleftrightarrow}}

在书写化学方程式时可声明 \require{AMDcd} 语句,使用 MathJax 内置的交换图表功能,具体例子可参见下文

(8).连线符号

其它可用的文字修饰符可参见官方文档 "Additional decorations"

输入 显示
\fbox{a+b+c+d}
\overleftarrow{a+b+c+d}
\overrightarrow{a+b+c+d}
\overleftrightarrow{a+b+c+d}
\underleftarrow{a+b+c+d}
\underrightarrow{a+b+c+d}
\underleftrightarrow{a+b+c+d}
\overline{a+b+c+d}
\underline{a+b+c+d}
\overbrace{a+b+c+d}^{Sample}
\underbrace{a+b+c+d}_{Sample}
\overbrace{a+\underbrace{b+c}_{1.0}+d}^{2.0}
\underbrace{a\cdot a\cdots a}_{b\text{ times}}

(9).箭头符号

  • 推荐使用符号:
输入 显示 输入 显示 输入 显示
\to \mapsto \underrightarrow{1℃/min}
\implies \iff \impliedby
  • 其它可用符号:
输入 显示 输入 显示
\uparrow \Uparrow
\downarrow \Downarrow
\leftarrow \Leftarrow
\rightarrow \Rightarrow
\leftrightarrow \Leftrightarrow
\longleftarrow \Longleftarrow
\longrightarrow \Longrightarrow
\longleftrightarrow \Longleftrightarrow

13.如何进行字体转换

若要对公式的某一部分字符进行字体转换,可以用 {\字体 {需转换的部分字符}} 命令,其中 \字体 部分可以参照下表选择合适的字体。一般情况下,公式默认为斜体字

示例中 全部大写 的字体仅大写可用。

输入 全字母可用 显示 输入 仅大写可用 显示
\rm 罗马体 \mathcal 花体(数学符号等)
\it 斜体 \mathbb 黑板粗体(定义域等)
\bf 粗体 \mit 数学斜体
\sf 等线体 \scr 手写体
\tt 打字机体 \cal 等同于 \mathcal
\frak 旧德式字体 \Bbb 等同于 \mathbb
\boldsymbol 向量或者矩阵的加粗斜体

转换字体十分常用,例如在积分中:

  • 例子:
\begin{array}{cc}
    \mathrm{Bad} & \mathrm{Better} \\
    \hline \\
    \int_0^1 x^2 dx & \int_0^1 x^2 \,{\rm d}x
\end{array}
  • 显示:

注意比较两个式子间 的不同。 使用 \operatorname 命令也可以达到相同的效果,详见[定义新的运算符](# 1定义新的运算符-operatorname)。

14.如何高亮一行公式

使用 \bbox[底色, (可选)边距, (可选)边框 border: 框宽度 框类型 框颜色] 命令来高亮一行公式。 底色和框颜色支持详见“[更改文字颜色](# 4更改文字颜色-color)”,边距及框宽度支持 绝对像素 px相对大小 em,框类型支持 实线 solid虚线 dashed

  • 例子:
$$
\bbox[yellow]{
    e^x=\lim_{n\to\infty} \left( 1+\frac{x}{n} \right)^n \qquad (1)
}
$$
  • 显示:
  • 例子:
$$
\bbox[#9ff, 5px]{ % 此处向外添加 5 像素的边距
    e^x=\lim_{n\to\infty} \left( 1+\frac{x}{n} \right)^n \qquad (1)
}
$$
  • 显示:
  • 例子:
$$
% 此处使用 0.5 倍行高作为边距,附加 2 像素的实线边框(Ctrl+Alt+Y 可见)
\bbox[#2f3542, 0.5em, border:2px solid #f1f2f6]{
    \color{#f1f2f6}{e^x=\lim_{n\to\infty} \left( 1+\frac{x}{n} \right)^n \qquad (1)}
}
$$
  • 显示:

15.大括号和行标的使用

\left\right 之后加上要使用的括号来创建自动匹配高度的圆括号 ( ),方括号 [ ] 和花括号 \{ \}。 在每个公式末尾前使用 \tag {行标} 来实现行标。

  • 例子:
$$
f\left(
   \left[ 
     \frac{
       1+\left\{x,y\right\}
     }{
       \left(
          \frac xy + \frac yx
       \right)
       (u+1)
     }+a
   \right]^{3/2}
\right)
\tag {行标}
$$
  • 显示:

如果你需要在不同的行显示对应括号,可以在每一行对应处使用 \left.\right. 来放一个“不存在的括号”。

  • 例子:
$$
\begin{align*}
    a=&\left(1+2+3+ \cdots \right. \\
      &\cdots+\left. \infty-2+\infty-1+\infty\right)
\end{align*}
$$
  • 显示:

如果你需要将大括号里面显示的分隔符也变大,可以使用 \middle 命令,此处分别使用单竖线 | 和双竖线 \\|

  • 例子:
$$
\left\langle  
    q \; \middle|
        \frac{\frac xy}{\frac uv}
    \middle\| p 
\right\rangle
$$
  • 显示:

16.其它命令

(1).定义新的运算符 \operatorname

当需要使用的运算符不在 MathJax 的内置库中时,程序可能会报错或产生错误的渲染结果。此时可以使用 \operatorname 命令定义一个新的运算符号。

  • 反例:
\begin{array}{c|c}
    \mathrm{Error} & \text{Wrong rendering} \\
    \hline \\
    \arsinh(x) & arsinh(x) \\
    \Res_{z=1} & Res_{z=1}{\frac{1}{z^2-z}=1} \\
\end{array}
  • 显示:

使用 \operatorname{运算符}{式子} 来生成一个普通运算,或使用 \operatorname*{运算符}_{下标}^{上标}{式子} 来生成一个含上下标的自定义运算。

  • 例子:
\begin{array}{c|c}
    \text{Normal Operator} & \text{Operator with label above and below} \\
    \hline \\
    \scriptsize\text{\operatorname{arsinh}{x}} & \scriptsize\text{\operatorname*{Res}_{z=1}{\frac{1}{z^2-z}=1}} \\
    \operatorname{arsinh}{x} & \operatorname*{Res}_{z=1}{\frac{1}{z^2-z}=1} \\
\end{array}
  • 显示: