Markdown数学公式语法

发布于 2021-04-25  28 次阅读


数学公式

行中公式

使用方法:

$ 数学公式 $

独立公式

使用方法:

 数学公式

快捷键:CTRL+Shift+M

如何输入上下标

符号 用法 例子
上标符号 ^ $x^2$ $x^2$
下标符号 _ $x_0$ $x_0$

颜色

更改文字颜色

使用 \textcolor{颜色}{文字} 来更改特定的文字颜色。

更改文字颜色需要浏览器支持 ,如果浏览器不知道你所需的颜色,那么文字将被渲染为黑色。对于较旧的浏览器(HTML4 & CSS2),以下颜色是被支持的:

$\textcolor{black}{黑色}$ \textcolor{black}{黑色} $\textcolor{black}{black}$
$\textcolor{silver}{银色}$ \textcolor{silver}{银色} $\textcolor{silver}{silver}$
$\textcolor{maroon}{粟色}$ \textcolor{maroon}{粟色} $\textcolor{maroon}{maroon}$
$\textcolor{yellow}{黄色}$ \textcolor{yellow}{黄色} $\textcolor{yellow}{yellow}$
$\textcolor{olive}{橄榄色}$ \textcolor{olive}{橄榄色} $\textcolor{olive}{olive}$
$\textcolor{teal}{青色}$ \textcolor{teal}{青色} $\textcolor{teal}{teal}$
$\textcolor{blue}{蓝色}$ \textcolor{blue}{蓝色} $\textcolor{blue}{blue}$
$\textcolor{purple}{紫色}$ \textcolor{purple}{紫色} $\textcolor{purple}{purple}$
$\textcolor{grey}{灰色}$ \textcolor{grey}{灰色} $\textcolor{grey}{grey}$
$\textcolor{white}{白色}$ \textcolor{white}{白色} $\textcolor{white}{white}$
$\textcolor{red}{红色}$ \textcolor{red}{红色} $\textcolor{red}{red}$
$\textcolor{lime}{青柠}$ \textcolor{lime}{青柠} $\textcolor{lime}{lime}$
$\textcolor{green}{绿色}$ \textcolor{green}{绿色} $\textcolor{green}{green}$
$\textcolor{auqa}{浅绿色}$ \textcolor{auqa}{浅绿色} $\textcolor{auqa}{auqa}$
$\textcolor{navy}{藏青}$ \textcolor{navy}{藏青} $\textcolor{navy}{navy}$
$\textcolor{fuchsia}{粉玫色}$ \textcolor{fuchsia}{粉玫色} $\textcolor{fuchsia}{fuchsia}$

对于较新的浏览器(HTML5 & CSS3),HEX 颜色将被支持:

输入 \textcolor {#rgb} {text} 来自定义更多的颜色,其中 #rgb#rrggbbr g b 可输入 0-9a-f 来表示红色、绿色和蓝色的纯度(饱和度)。

输入 显示
\textcolor{#F8F}{text} $\textcolor{#F8F}{text}$

括号

名称 符号 用法 例子
小括号 () SHIFT+9 $(1+1)\times2=4$ $(1+1)\times2=4$
中括号 [] [] $2\times[(4+6)\times3]=60$ $2\times[(4+6)\times3]=60$
大括号 {} \{\} ${3\times10}$ $\{3\times10\}$
\langle $\langle$ \rangle $\rangle$
\lceil $\lceil$ \rceil $\rceil$
\lfloor $\lfloor$ \rfloor $\rfloor$
\lbrace $\lbrace$ \rbrace $\rbrace$
\lvert $\lvert$ \rvert $\rvert$
\lVert $\lVert$ \rVert $\rVert$

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

开方

名称 符号 用法 例子 使用 注释
开方 $\sqrt{}$ \sqrt{} $ \sqrt{2} \quad or \quad \sqrt[n]{3} $ $\sqrt{2} \quad or \quad \sqrt[n]{3}$ \sqrt [根指数,省略时为2] {被开方数}

省略号

名称 符号 用法 例子 使用 注释
省略号 $\ldots$ \ldots $f(x_1,x_2,\underbrace{\ldots}_{\rm ldots} ,x_n)$ $\sqrt{2} \quad or \quad \sqrt[n]{3}$ 文本底线 对齐
省略号 $\cdots$ \cdots $x_1^2 + x_2^2 + \underbrace{\cdots}_{\rm cdots} + x_n^2$ $x_1^2 + x_2^2 + \underbrace{\cdots}_{\rm cdots} + x_n^2$ 文本中线 对齐
区别
$f(x_1,x_2,\underbrace{\ldots}_{\rm ldots} ,x_n)$ $x_1^2 + x_2^2 + \underbrace{\cdots}_{\rm cdots} + x_n^2$

分式

通常使用 \frac {分子} {分母} 来生成一个分数,分数可多层嵌套。如果分式较为复杂,亦可使用 分子 \over 分母 此时分数仅有一层。

分式[通用-可多层嵌套] $\frac{a-1}{b-1}$ $\frac{a-1}{b-1}$ \frac {分子} {分母}
分式[单层] ${a+1 \over b+1}$ ${a+1 \over b+1}$ 分子 \over 分母
分式[两字符] $\frac 1a$ $\frac 1a$ \frac ab
分式[两字符] $\frac 12a$ $\frac 12a$ \frac ab

四则运算

运算法则 符号 用法 例子 使用 注释
加法运算 $+$ + $1+1=2$ $1+1=2$
减法运算 $-$ - $1-1=0$ $1-1=0$
乘法运算 $\times$ \times $1\times1=1$ $1\times1=1$
除法运算 $\div$ \div $1\div1=1$ $1\div1=1$
加减运算 $\pm$ \pm $\pm$
减加运算 $\mp$ \mp $\mp$
点乘运算 $\cdot$ \cdot $\cdot$
星乘运算 $\ast$ \ast $\ast$

高级运算

运算法则 符号 用法 例子 使用 注释
求和运算 $\sum$ \sum $\sum^{x\to\infty}_{y\to0}{\frac{x}{y}}$ $\sum^{x\to\infty}_{y\to0}{\frac{x}{y}}$
求和运算 $\displaystyle \sum$ \displaystyle \sum $\displaystyle \sum^{x \to \infty}_{y \to 0}{\frac{x}{y}}$ $\displaystyle \sum^{x \to \infty}_{y \to 0}{\frac{x}{y}}$
累加运算 $\sum$ \sum $\sum_{i=1}^n \frac{1}{i^2}$ $\sum_{i=1}^n \frac{1}{i^2}$ \sum_{下标表达式}^{上标表达式} {累加表达式}
累乘运算 $\prod$ \prod $\prod_{i=1}^n \frac{1}{i^2}$ \prod_{i=1}^n \frac{1}{i^2}
积分运算 $\int$ \int $\int^{\infty}_{0}{xdx}$ $\int^{\infty}_{0}{xdx}$ \int_积分下限^积分上限 {被积表达式}
积分运算 $\displaystyle \int$ \displaystyle \int $\displaystyle \int^{\infty}_{0}{xdx}$ $\displaystyle \int^{\infty}_{0}{xdx}$
极限运算 $\lim$ \lim $\lim^{x \to \infty}_{y \to 0}{\frac{x}{y}}$ $\lim^{x \to \infty}_{y \to 0}{\frac{x}{y}}$ \lim_{变量 \to 表达式} 表达式
极限运算 $\displaystyle \lim$ \displaystyle \lim $\displaystyle \lim^{x \to \infty}_{y \to 0}{\frac{x}{y}}$ $\displaystyle \lim^{x \to \infty}_{y \to 0}{\frac{x}{y}}$
微分运算 $\partial$ \partial $\frac{\partial x}{\partial y}$ $\frac{\partial x}{\partial y}$

矩阵

如何输入无框矩阵

在开头使用 \begin{matrix},在结尾使用 \end{matrix},在中间插入矩阵元素,每个元素之间插入 & ,并在每行结尾处使用 \\
使用矩阵时必须声明 $$$ 符号。

  • 例子:
    $$
    \begin{matrix}
      1 & x & x^2 \\
      1 & y & y^2 \\
      1 & z & z^2 \\
    \end{matrix}
    $$
    
  • 显示:
    \begin{matrix}
    1&x&x^2 \
    1&y&y^2 \
    1&z&z^2 \
    \end{matrix}

如何输入边框矩阵

在开头将 matrix 替换为 pmatrix bmatrix Bmatrix vmatrix Vmatrix

  • 例子:
    $ \begin{matrix} 1 & 2 \\ 3 & 4 \\ \end{matrix} $
    $ \begin{pmatrix} 1 & 2 \\ 3 & 4 \\ \end{pmatrix} $
    $ \begin{bmatrix} 1 & 2 \\ 3 & 4 \\ \end{bmatrix} $
    $ \begin{Bmatrix} 1 & 2 \\ 3 & 4 \\ \end{Bmatrix} $
    $ \begin{vmatrix} 1 & 2 \\ 3 & 4 \\ \end{vmatrix} $
    $ \begin{Vmatrix} 1 & 2 \\ 3 & 4 \\ \end{Vmatrix} $
    
  • 显示:

matrix pmatrix bmatrix Bmatrix vmatrix Vmatrix
$ \begin{matrix} 1 & 2 \ 3 & 4 \ \end{matrix} $ $ \begin{pmatrix} 1 & 2 \ 3 & 4 \ \end{pmatrix} $ $ \begin{bmatrix} 1 & 2 \ 3 & 4 \ \end{bmatrix} $ $ \begin{Bmatrix} 1 & 2 \ 3 & 4 \ \end{Bmatrix} $ $ \begin{vmatrix} 1 & 2 \ 3 & 4 \ \end{vmatrix} $ $ \begin{Vmatrix} 1 & 2 \ 3 & 4 \ \end{Vmatrix} $

如何输入带省略符号的矩阵

使用 \cdots$\cdots$ , \ddots$\ddots$ , \vdots \vdots来输入省略符号。

  • 例子:
    $$
    \begin{pmatrix}
      1 & a_1 & a_1^2 & \cdots & a_1^n \\
      1 & a_2 & a_2^2 & \cdots & a_2^n \\
      \vdots & \vdots & \vdots & \ddots & \vdots \\
      1 & a_m & a_m^2 & \cdots & a_m^n \\
    \end{pmatrix}
    $$
    
  • 显示:
    \begin{pmatrix}
    1&a_1&a_1^2&\cdots&a_1^n \
    1&a_2&a_2^2&\cdots&a_2^n \
    \vdots&\vdots&\vdots&\ddots&\vdots \
    1&a_m&a_m^2&\cdots&a_m^n \
    \end{pmatrix}

如何输入带分割符号的矩阵

详见"数组使用参考"。

  • 例子:
    $$
    \left[
      \begin{array}{cc|c}
          1 & 2 & 3 \\
          4 & 5 & 6 \\
      \end{array}
    \right]
    $$
    
  • 显示:
    \left[
    \begin{array}{cc|c}
    1&2&3 \
    4&5&6 \
    \end{array}
    \right]

其中 cc|c 代表在一个三列矩阵中的第二和第三列之间插入分割线。

如何输入行中矩阵

若想在一行内显示矩阵,
使用\bigl(\begin{smallmatrix} ... \end{smallmatrix}\bigr)

  • 例子:
    这是一个行中矩阵的示例 \bigl(\begin{smallmatrix} a&b \\ c&d \end{smallmatrix}\bigr)
  • 显示:这是一个行中矩阵的示例 \bigl(\begin{smallmatrix} a&b\\c&d \end{smallmatrix}\bigr)

希腊字母

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

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

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

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

符号

关系运算符

输入 显示 输入 显示 输入 显示 输入 显示
\pm $\pm$ \times $\times$ \div $\div$ \mid $\mid$
\nmid $\nmid$ \cdot $\cdot$ \circ $\circ$ \ast $\ast$
\bigodot $\bigodot$ \bigotimes $\bigotimes$ \bigoplus $\bigoplus$ \leq $\leq$
\geq \geq \neq $\neq$ \approx $\approx$ \equiv $\equiv$
\sum \sum \prod $\prod$ \coprod $\coprod$ \backslash $\backslash$

集合运算符

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

对数运算符

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

三角运算符

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

微积分运算符

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

逻辑运算符

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

戴帽符号

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

若需要在特定文字顶部\底部放置内容,可使用 \overset{顶部内容}{正常内容}\underset{底部内容}{正常内容} 命令。

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

    \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} $$
    
  • 显示:

    \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}}
$$
SrO+V^"{Sr}\overset{H_2}{\underset{1300℃}{\Longleftrightarrow}}Sr\underset{Sr}{\times}+2e^\prime+\frac12O_2(g)​
$$
\overset{Surface/bulk}{\underset{diffusion}{\longleftrightarrow}}

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

连线符号

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

输入 显示
\fbox{a+b+c+d}高级框选需声明 enclose 标签 $\fbox{a+b+c+d}$
\overleftarrow{a+b+c+d} $\overleftarrow{a+b+c+d}$
\overrightarrow{a+b+c+d} $\overrightarrow{a+b+c+d}$
\overleftrightarrow{a+b+c+d} $\overleftrightarrow{a+b+c+d}$
\underleftarrow{a+b+c+d} $\underleftarrow{a+b+c+d}$
\underrightarrow{a+b+c+d} $\underrightarrow{a+b+c+d}$
\underleftrightarrow{a+b+c+d} $\underleftrightarrow{a+b+c+d}$
\overline{a+b+c+d} $\overline{a+b+c+d}$
\underline{a+b+c+d} $\underline{a+b+c+d}$
\overbrace{a+b+c+d}^{Sample} $\overbrace{a+b+c+d}^{Sample}$
\underbrace{a+b+c+d}_{Sample} $\underbrace{a+b+c+d}_{Sample}$
\overbrace{a+\underbrace{b+c}_{1.0}+d}^{2.0} $\overbrace{a+\underbrace{b+c}_{1.0}+d}^{2.0}$
\underbrace{a\cdot a\cdots a}_{b\text{ times}} $\underbrace{a\cdot a\cdots a}_{b\text{ times}}$

箭头符号

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

其他符号(对和错)

输入
\checkmark $\checkmark$
\surd $\surd$
\times $\times$

方程式序列使用参考

如何输入一个方程式序列

人们经常想要一列整齐且居中的方程式序列。使用 \begin{align}…\end{align} 来创造一列方程式,其中在每行结尾处使用 \\ 。使用方程式序列无需声明公式符号 $$$

请注意 {align} 语句是自动编号的,使用 {align\*} 声明不自动编号。

  • 例子:
    begin{align}
      \sqrt{37} & = \sqrt{\frac{73^2-1}{12^2}} \\
                & = \sqrt{\frac{73^2}{12^2}\cdot\frac{73^2-1}{73^2}} \\ 
                & = \sqrt{\frac{73^2}{12^2}}\sqrt{\frac{73^2-1}{73^2}} \\
                & = \frac{73}{12}\sqrt{1-\frac{1}{73^2}} \\ 
                & \approx \frac{73}{12}\left(1-\frac{1}{2\cdot73^2}\right) \\
    \end{align}
    
  • 显示:
    \begin{align}
    \sqrt{37}&= \sqrt{\frac{73^2-1}{12^2}} \
    &= \sqrt{\frac{73^2}{12^2}\cdot\frac{73^2-1}{73^2}}\\ &= \sqrt{\frac{73^2}{12^2}}\sqrt{\frac{73^2-1}{73^2}} \
    &= \frac{73}{12}\sqrt{1-\frac{1}{73^2}}\\ &\approx \frac{73}{12}\left(1-\frac{1}{2\cdot73^2}\right) \
    \end{align}

本例中每行公式的编号续自如何插入公式中的自动编号公式 。

在一个方程式序列的每一行中注明原因

{align} 中后添加 & 符号来自动对齐后面的内容,可灵活组合 \text\tag 语句。\tag 语句编号优先级高于自动编号。

  • 例子:
    begin{align}
      v + w & = 0  & \text{Given} \tag 1 \\
         -w & = -w + 0 & \text{additive identity} \tag 2 \\
     -w + 0 & = -w + (v + w) & \text{equations (1) and (2)} \\
    \end{align}
    

本例中第一、第二行的自动编号被 \tag 语句覆盖,第三行的编号为自动编号。

@joyphys 如何引用 \tag 标记的公式?
使用 \tag{yourtag} 来标记公式,然后在 \tag 之后加上 \label{yourlabel}

条件表达式使用参考

如何输入一个条件表达式

使用 \begin{cases}…\end{cases} 来创造一组条件表达式,在每一行条件中插入 & 来指定需要对齐的内容,并在每一行结尾处使用 \\

  • 例子:
    $$
      f(n) =
          \begin{cases}
              n/2,  & \text{if $n$ is even} \\
              3n+1, & \text{if $n$ is odd} \\
          \end{cases}
    $$
    

@Sherlockk 用 markdown+math 编辑时 \text 内需用 \(equation\)

如何输入一个左侧对齐的条件表达式

若想让文字在左侧对齐显示,则有如下方式:

  • 例子:
    $$
      \left.
          \begin{array}{l}
              \text{if $n$ is even:} & n/2 \\
              \text{if $n$ is odd:} & 3n+1 \\
          \end{array}
      \right\}
      =f(n)
    $$
    

如何使条件表达式适配行高

在一些情况下,条件表达式中某些行的行高为非标准高度,此时使用 \\[2ex] 语句代替该行末尾的 \\ 来让编辑器适配。

  • 例子:
不适配[2ex]
$$
f(n) = 
    \begin{cases}
        \frac{n}{2}, & \text{if $n$ is even} \\
        3n+1,        & \text{if $n$ is odd} \\
    \end{cases}
$$
适配[2ex]
$$
f(n) = 
    \begin{cases}
        \frac{n}{2}, & \text{if $n$ is even} \\[2ex]
        3n+1,        & \text{if $n$ is odd} \\
    \end{cases}
$$
  • 显示:
不适配[2ex] 适配[2ex]
$$ f(n) = \begin{cases} \frac{n}{2}, & \text{if $n$ is even} \ 3n+1, & \text{if $n$ is odd} \ \end{cases} $$ $$ f(n) = \begin{cases} \frac{n}{2}, & \text{if $n$ is even} \[2ex] 3n+1, & \text{if $n$ is odd} \ \end{cases}$$

一个 [ex] 指一个 "X-Height",即 x 字母高度。可以根据情况指定多个 [ex],如 [3ex][4ex] 等。
其实可以在任意换行处使用 \\[2ex] 语句,只要你觉得合适。

数组与表格使用参考

如何输入一个数组或表格

通常,一个格式化后的表格比单纯的文字或排版后的文字更具有可读性。
数组和表格均以 \begin{array} 开头,并在其后定义列数及每一列的文本对齐属性,c l r 分别代表居中、左对齐及右对齐。若需要插入垂直分割线,在定义式中插入 | ,若要插入水平分割线,在下一行输入前插入 \hline
与矩阵相似,每行元素间均须要插入 & ,每行元素以 \\ 结尾,最后以 \ end{array} 结束数组。
使用单个数组或表格时无需声明 $$$ 符号。

  • 例子:
    begin{array}{c|lcr}
      n & \text{左对齐} & \text{居中对齐} & \text{右对齐} \\
      \hline
      1 & 0.24 & 1 & 125 \\
      2 & -1 & 189 & -8 \\
      3 & -20 & 2000 & 1+10i \\
    \end{array}
    
  • 显示:
    \begin{array}{c|lcr}
    n&\text{左对齐}&\text{居中对齐}&\text{右对齐} \
    \hline
    1&0.24&1&125 \
    2&-1&189&-8 \
    3&-20&2000&1+10i \
    \end{array}

如何输入一个嵌套的数组或表格

多个数组\表格可 互相嵌套 并组成一组数组或表格。
使用嵌套前必须声明 $$ 符号。

  • 例子:
    $$
    \begin{array}{c} % 总表格
      \begin{array}{cc} % 第一行内分成两列
          \begin{array}{c|cccc} % 第一列"最小值"数组
              \text{min} & 0 & 1 & 2 & 3 \\
              \hline
              0 & 0 & 0 & 0 & 0 \\
              1 & 0 & 1 & 1 & 1 \\
              2 & 0 & 1 & 2 & 2 \\
              3 & 0 & 1 & 2 & 3 \\
          \end{array}
          &
          \begin{array}{c|cccc} % 第二列"最大值"数组
              \text{max} & 0 & 1 & 2 & 3 \\
              \hline
              0 & 0 & 1 & 2 & 3 \\
              1 & 1 & 1 & 2 & 3 \\
              2 & 2 & 2 & 2 & 3 \\
              3 & 3 & 3 & 3 & 3 \\
          \end{array}
      \end{array} % 第一行表格组结束
      \\
      \begin{array}{c|cccc} % 第二行 Delta 值数组
          \Delta & 0 & 1 & 2 & 3 \\
          \hline
          0 & 0 & 1 & 2 & 3 \\
          1 & 1 & 0 & 1 & 2 \\
          2 & 2 & 1 & 0 & 1 \\
          3 & 3 & 2 & 1 & 0 \\
      \end{array} % 第二行表格结束
    \end{array} % 总表格结束
    $$
    
  • 显示:
    \begin{array}{c} % 总表格
    \begin{array}{cc} % 第一行内分成两列
    \begin{array}{c|cccc} % 第一列"最小值"数组
    \text{min}&0&1&2&3 \
    \hline
    0&0&0&0&0 \
    1&0&1&1&1 \
    2&0&1&2&2 \
    3&0&1&2&3 \
    \end{array}
    &
    \begin{array}{c|cccc} % 第二列"最大值"数组
    \text{max}&0&1&2&3 \
    \hline
    0&0&1&2&3 \
    1&1&1&2&3 \
    2&2&2&2&3 \
    3&3&3&3&3 \
    \end{array}
    \end{array} % 第一行表格组结束
    \
    \begin{array}{c|cccc} % 第二行 Delta 值数组
    \Delta&0&1&2&3 \
    \hline
    0&0&1&2&3 \
    1&1&0&1&2 \
    2&2&1&0&1 \
    3&3&2&1&0 \
    \end{array} % 第二行表格结束
    \end{array} % 总表格结束

如何输入一个方程组

可以使用 \begin{array} … \end{array}\left\{ … \right. 来创建一个方程组:

  • 例子:
    $$
    \left\{ 
      \begin{array}{c}
          a_1x+b_1y+c_1z=d_1 \\ 
          a_2x+b_2y+c_2z=d_2 \\ 
          a_3x+b_3y+c_3z=d_3 \\
      \end{array}
    \right. 
    $$
    
  • 显示:
    \left{ \begin{array}{c}
    a_1x+b_1y+c_1z=d_1\\ a_2x+b_2y+c_2z=d_2\\ a_3x+b_3y+c_3z=d_3 \
    \end{array}
    \right.

或使用条件表达式组 \begin{cases} … \end{cases} 来实现相同效果:

  • 例子:
    begin{cases}
      a_1x+b_1y+c_1z=d_1 \\ 
      a_2x+b_2y+c_2z=d_2 \\ 
      a_3x+b_3y+c_3z=d_3 \\
    \end{cases}
    
  • 显示:
    \begin{cases}
    a_1x+b_1y+c_1z=d_1\\ a_2x+b_2y+c_2z=d_2\\ a_3x+b_3y+c_3z=d_3 \
    \end{cases}

连分数使用参考

如何输入一个连分式

就像输入分式时使用 \frac 一样,使用 \cfrac 来创建一个连分数。

  • 例子:
    $$
    x = a_0 + \cfrac{1^2}{a_1 +
              \cfrac{2^2}{a_2 +
                \cfrac{3^2}{a_3 +
                  \cfrac{4^4}{a_4 + 
                    \cdots
                  }
                }
              }
            }
    $$
    
  • 显示:
    x = a_0 + \cfrac{1^2}{a_1 +
    \cfrac{2^2}{a_2 +
    \cfrac{3^2}{a_3 +
    \cfrac{4^4}{a_4 + \cdots
    }
    }
    }
    }

不要使用普通的 \frac\over 来生成连分数,这样会看起来不好看

  • 反例:
    $$
    x = a_0 + \frac{1^2}{a_1 +
              \frac{2^2}{a_2 +
                \frac{3^2}{a_3 +
                  \frac{4^4}{a_4 + 
                    \cdots
                  }
                }
              }
            }
    $$
    
  • 显示:
    x = a_0 + \frac{1^2}{a_1 +
    \frac{2^2}{a_2 +
    \frac{3^2}{a_3 +
    \frac{4^4}{a_4 + \cdots
    }
    }
    }
    }

当然,你可以使用 \frac 来表达连分数的紧缩记法

  • 例子:
    $$
    x = a_0 + \frac{1^2}{a_1 +}
            \frac{2^2}{a_2 +}
            \frac{3^2}{a_3 +}
            \frac{4^4}{a_4 +}
            \cdots
    $$
    
  • 显示:
    x = a_0 + \frac{1^2}{a_1 +}
    \frac{2^2}{a_2 +}
    \frac{3^2}{a_3 +}
    \frac{4^4}{a_4 +}
    \cdots

连分数通常都太大以至于不易排版,所以建议在连分数前后声明 $$ 符号,或使用像 [a0,a1,a2,a3,…] 一样的紧缩记法。

交换图表使用参考

如何输入一个交换图表

推荐使用 Cmd Markdown 自带的各种图功能,详见 Cmd Markdown 高阶语法手册

使用一行 \require{AMScd} 语句来允许交换图表的显示。
声明交换图表后,语法与矩阵相似,在开头使用 \begin{CD},在结尾使用 \ end{CD},在中间插入图表元素,每个元素之间插入 & ,并在每行结尾处使用 \\

  • 例子:
    $$
    \require{AMScd}
    \begin{CD}
      A @>a>> B \\
      @V b V V\# @VV c V \\
      C @>>d> D \\
    \end{CD}
    $$
    
  • 显示:
    \require{AMScd}
    \begin{CD}
    A @>a>> B \
    @V b V V# @VV c V \
    C @>>d> D \
    \end{CD}

其中,@>>> 代表右箭头、@<<< 代表左箭头、@VVV 代表下箭头、@AAA 代表上箭头、@= 代表水平双实线、@| 代表竖直双实线、@.代表没有箭头。
@>>>>>> 之间任意插入文字即代表该箭头的注释文字。

  • 例子:
    $$
    \require{AMDcd}
    \begin{CD}
      A @>>> B @>{\text{very long label}}>> C \\
      @. @AAA @| \\
      D @= E @<<< F \\
    \end{CD}
    $$
    
  • 显示:
    \require{AMDcd}
    \begin{CD}
    A @>>> B @>{\text{very long label}}>> C \
    @. @AAA @| \
    D @= E @<<< F \
    \end{CD}

在本例中,very long label 自动延长了它所在箭头以及对应箭头的长度,因而交换图表十分适合进行化学反应式的书写。

  • 例子:
    $$
    \require{AMDcd}
    \begin{CD}
      \rm{RCOHR^{'}SO_3Na} @>{\large\text{Hydrolysis, $\Delta$, Dil.HCl}}>> \rm{(RCOR^{'})+NaCl+SO_2+ H_2O}
    \end{CD}
    $$
    

公式美化

字体转换

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

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

输入 全字母可用 显示 输入 仅大写可用 显示
\rm 罗马体 ${\rm{simple}}$ \mathcal 花体(数学符号等) ${\mathcal{simple}}$
\it 斜体 ${\it{simple}}$ \mathbb 黑板粗体(定义域等 ${\mathbb{simple}}$
\bf 粗体 ${\bf{simple}}$ \mit 数学斜体 ${\mit{simple}}$
\sf 等线体 ${\sf{simple}}$ \scr 手写体 ${\scr{simple}}$
\tt 打字机体 ${\tt{simple}}$
\frak 旧德式字体 ${\frak{simple}}$

@lymd \boldsymbol{\alpha} 用来表示向量或者矩阵的加粗斜体,如向量 \vec{{\boldsymbol{\alpha}}}

  • 例子:
    begin{array}{cc}
      \mathrm{Bad} & \mathrm{Better} \\
      \hline \\
      \int_0^1 x^2 dx & \int_0^1 x^2 \,{\rm d}x
    \end{array}
    
  • 显示:
    \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 命令也可以达到相同的效果

高亮公式

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

  • 例子:
    $$
    \bbox[yellow]{
      e^x=\lim_{n\to\infty} \left( 1+\frac{x}{n} \right)^n \qquad (1)
    }
    $$
    
  • 显示:
    \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)
    }
    
  • 显示:

    \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)}
    }
    $$
    
  • 显示:
    % 此处使用 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)}
    }

大括号和行标的使用

\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 {行标}
    $$
    
  • 显示:
    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*}
    $$
    
  • 显示:
    $$
    \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
    $$
    
  • 显示:
    $$
    \left\langle
    q \; \middle|
    \frac{\frac xy}{\frac uv}
    \middle| p
    \right\rangle
    $$

定义新的运算符

当需要使用的运算符不在 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}
    
  • 显示:
    \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}
    
  • {Res}_{z=1}{\frac{1}{z^2-z}=1}} \
    \operatorname{arsinh}{x} & \operatorname
    {Res}_{z=1}{\frac{1}{z^2-z}=1} \
    \end{array}
    $$

添加注释文字

\text {文字} 中仍可以使用 $公式$ 插入其它公式。

  • 例子:
    $$ f(n)= \begin{cases} n/2, & \text {if $n$ is even} \\ 3n+1, & \text{if $n$ is odd} \end{cases} $$
    

字符间加入空格

有四种宽度的空格可以使用: \,\;\quad\qquad,灵活使用 \text{n个空格} 也可以在任意位置实现空格。
同时存在一种负空格 \! 用来减小字符间距,一般在物理单位中使用。
反复使用 \! 命令能够实现不同元素的叠加渲染,如 和

  • 例子:
    begin{array}{c|c}
      \text{Spaces} & \text{Negative Space in Units} \\
      \hline \\
      \overbrace{a \! b}^{\text{\!}} \mid \underbrace{ab}_{\rm{default}} \mid \overbrace{a \, b}^{\text{\,}} \mid \underbrace{a \; b}_{\text{\;}} \mid \overbrace{a \quad b}^{\text{\quad}} \mid \underbrace{a \qquad b}_{\text{\qquad}} & \mathrm{N}\!\cdot\!\mathrm{m} \mid \mathrm{s}\!\cdot\!\mathrm{A} \mid \mathrm{kg}\!\cdot\!\mathrm{m}^2 \\ 
    \end{array}
    
  • {\rm{default}} \mid \overbrace{a \, b}^{\text{\,}} \mid \underbrace{a \; b}{\text{\;}} \mid \overbrace{a \quad b}^{\text{\quad}} \mid \underbrace{a \qquad b}_{\text{\qquad}} & \mathrm{N}!\cdot!\mathrm{m} \mid \mathrm{s}!\cdot!\mathrm{A} \mid \mathrm{kg}!\cdot!\mathrm{m}^2 \
    \end{array}
    $$

一些常见的公式单位可表达如下:

  • 例子:
    $$ \mu_0=4\pi\times10^{-7} \ \left.\mathrm{\mathrm{T}\!\cdot\!\mathrm{m}}\middle/\mathrm{A}\right. $$
    $$ 180^\circ=\pi \ \mathrm{rad} $$
    $$ \mathrm{N_A} = 6.022\times10^{23} \ \mathrm{mol}^{-1} $$
    
  • 显示:

    \mu_0=4\pi\times10^{-7} \ \left.\mathrm{\mathrm{T}!\cdot!\mathrm{m}}\middle/\mathrm{A}\right.
    180^\circ=\pi \ \mathrm{rad}
    \mathrm{N_A} = 6.022\times10^{23} \ \mathrm{mol}^{-1}

添加删除线

使用删除线功能必须声明 $$ 符号。

在公式内使用 \require{cancel} 来允许片段删除线的显示。
声明片段删除线后,使用 \cancel{字符}\bcancel{字符}\xcancel{字符}\cancelto{字符} 来实现各种片段删除线效果。

  • 例子:
    $$
    \require{cancel}
    \begin{array}{rl}
      \verb|y+\cancel{x}| & y+\cancel{x} \\
      \verb|\cancel{y+x}| & \cancel{y+x} \\
      \verb|y+\bcancel{x}| & y+\bcancel{x} \\
      \verb|y+\xcancel{x}| & y+\xcancel{x} \\
      \verb|y+\cancelto{0}{x}| & y+\cancelto{0}{x} \\
      \verb+\frac{1\cancel9}{\cancel95} = \frac15+& \frac{1\cancel9}{\cancel95} = \frac15 \\
    \end{array}
    $$
    
  • 显示:
    \require{cancel}
    \begin{array}{rl}
    \verb|y+\cancel{x}|&y+\cancel{x} \
    \verb|\cancel{y+x}|&\cancel{y+x} \
    \verb|y+\bcancel{x}|&y+\bcancel{x} \
    \verb|y+\xcancel{x}|&y+\xcancel{x} \
    \verb|y+\cancelto{0}{x}|&y+\cancelto{0}{x} \
    \verb+\frac{1\cancel9}{\cancel95} = \frac15+& \frac{1\cancel9}{\cancel95} = \frac15 \
    \end{array}

使用 \require{enclose} 来允许整段删除线的显示。
声明整段删除线后,使用 \enclose{删除线效果}{字符} 来实现各种整段删除线效果。
其中,删除线效果有 horizontalstrikeverticalstrikeupdiagonalstrikedowndiagonalstrike,可叠加使用。

  • 例子:
    $$
    \require{enclose}
    \begin{array}{rl}
      \verb|\enclose{horizontalstrike}{x+y}| & \enclose{horizontalstrike}{x+y} \\
      \verb|\enclose{verticalstrike}{\frac xy}| & \enclose{verticalstrike}{\frac xy} \\
      \verb|\enclose{updiagonalstrike}{x+y}| & \enclose{updiagonalstrike}{x+y} \\
      \verb|\enclose{downdiagonalstrike}{x+y}| & \enclose{downdiagonalstrike}{x+y} \\
      \verb|\enclose{horizontalstrike,updiagonalstrike}{x+y}| & \enclose{horizontalstrike,updiagonalstrike}{x+y} \\
    \end{array}
    $$
    
  • 显示:
    \require{enclose}
    \begin{array}{rl}
    \verb|\enclose{horizontalstrike}{x+y}|&\enclose{horizontalstrike}{x+y} \
    \verb|\enclose{verticalstrike}{\frac xy}|&\enclose{verticalstrike}{\frac xy} \
    \verb|\enclose{updiagonalstrike}{x+y}|&\enclose{updiagonalstrike}{x+y} \
    \verb|\enclose{downdiagonalstrike}{x+y}|&\enclose{downdiagonalstrike}{x+y} \
    \verb|\enclose{horizontalstrike,updiagonalstrike}{x+y}|&\enclose{horizontalstrike,updiagonalstrike}{x+y} \
    \end{array}

此外, \enclose 命令还可以产生包围的边框和圆等,参见 MathML Menclose Documentation 以查看更多效果。

  • 例子:
分别使用 circleroundedbox 包围的公式
$$
\require{enclose}
\begin{array}{c}
    \enclose{circle}{f(\top),\, f^2(\top),\, f^3(\top) \,\cdots\, f^n(\top)} \\
    \enclose{roundedbox}{f(\bot),\, f^2(\bot),\, f^3(\bot) \,\cdots\, f^n(\bot)} \\
\end{array}
$$
使用 box 框住所有公式
$$
\require{enclose}
\enclose{box}{
    \begin{array}{c}
        f(\top),\, f^2(\top),\, f^3(\top) \,\cdots\, f^n(\top) \\
        f(\bot),\, f^2(\bot),\, f^3(\bot) \,\cdots\, f^n(\bot) \\
    \end{array}
}
$$
  • 显示:
分别使用 circleroundedbox 包围的公式 使用 box 框住所有公式
$$ \require{enclose}\begin{array}{c} \enclose{circle}{f(\top),\, f^2(\top),\, f^3(\top) \,\cdots\, f^n(\top)} \ \enclose{roundedbox}{f(\bot),\, f^2(\bot),\, f^3(\bot) \,\cdots\, f^n(\bot)} \ \end{array} $$ $$ \require{enclose} \enclose{box}{\begin{array}{c} f(\top),\, f^2(\top),\, f^3(\top) \,\cdots\, f^n(\top) \ f(\bot),\, f^2(\bot),\, f^3(\bot) \,\cdots\, f^n(\bot) \ \end{array}}$$

此例语法可参见“如何输入一个数组或表格”。

参考


一沙一世界,一花一天堂。君掌盛无边,刹那成永恒。