基本语法

行内用 $...$ ,如 i=0Nabg(t,i)dt\sum_{i=0}^N\int_{a}^{b}g(t,i)\text{d}t
文内用$$…$$,如

i=0Nabg(t,i)dt\sum_{i=0}^N\int_{a}^{b}g(t,i)\text{d}t

行内公式也可显示为文内公式的样子,需要在前面加上\displaystyle,如i=0Nabg(t,i)dt\displaystyle\sum_{i=0}^N\int_{a}^{b}g(t,i)\text{d}t

字母和杂项

希腊字母

显示 命令 显示 命令
α\alpha \alpha β\beta \beta
γ\gamma \gamma δ\delta \delta
ϵ\epsilon \epsilon ζ\zeta \zeta
η\eta \eta θ\theta \theta
ι\iota \iota κ\kappa \kappa
λ\lambda \lambda μ\mu \mu
ν\nu \nu ξ\xi \xi
π\pi \pi ρ\rho \rho
σ\sigma \sigma τ\tau \tau
υ\upsilon \upsilon ϕ\phi \phi
χ\chi \chi ψ\psi \psi
ω\omega \omega
  • 如果要大写希腊字母,则首字母大写即可,如\Gamma显示为 Γ\Gamma
  • 如果要使希腊字母显示为斜体,则前面添加var即可,如\varGamma显示为 Γ\varGamma

字母修饰

上下标

  • 上标:^
  • 下标:_
  • 举例:C_n^2显示为 Cn2C_n^2

矢量

  • 单字母向量:
    • \vec a显示为 a\vec a
    • \overrightarrow a显示为 a\overrightarrow a
  • 多字母向量:
    • \vec {ab}显示为 ab\vec {ab}
    • \overrightarrow {ab}显示为 ab\overrightarrow {ab}

特殊修饰

  • 字母上^\hat a显示为 a^\hat a
  • 平均数(上划线):\overline a显示为 a\overline a
  • 下划线:\underline a显示为 a\underline a

字体

  • TypeWriter:\mathtt {A}显示为
    ABCDEFGHIJKLMNOPQRSTUVWXYZ\mathtt {ABCDEFGHIJKLMNOPQRSTUVWXYZ}
  • Blackboard blod:\mathbb {A}显示为
    ABCDEFGHIJKLMNOPQRSTUVWXYZ\mathbb {ABCDEFGHIJKLMNOPQRSTUVWXYZ}
  • Sans Serif:\mathsf {A}显示为
    ABCDEFGHIJKLMNOPQRSTUVWXYZ\mathsf {ABCDEFGHIJKLMNOPQRSTUVWXYZ}

![[Pasted image 20220519165721.png]]

空格

  • 语法本身忽略空格,aba b都显示为 aba b
  • 小空格:a\ b显示为 a ba\ b
  • 4格空格:a\quad b显示为 aba\quad b

分组

  • 使用{}将同一级的括在一起,成组处理
  • 举例:x_i^2显示为 xi2x_i^2,而x_{i^2}显示为 xi2x_{i^2}

括号

  • 小括号:(...)显示为 (...)(...)

  • 中括号:[...]显示为 [...][...]

  • 大括号:\{...\}[1]显示为 {...}\{...\}

  • 尖括号:\langle ... \rangle显示为 ...\langle ... \rangle

  • 绝对值:\vert ... \vert显示为 ...\vert ... \vert

  • 双竖线:\Vert ... \Vert显示为 ...\Vert ... \Vert

  • 使用\left\right使符号大小与邻近的公式相适应,该语句适用于所有括号类型

    • 例如:\{\frac{(x+y)}{[\alpha+\beta]}\}显示为 {(x+y)[α+β]}\{\frac{(x+y)}{[\alpha+\beta]}\}
    • 而:\left\{\frac{(x+y)}{[\alpha+\beta]}\right\}显示为 {(x+y)[α+β]}\left\{\frac{(x+y)}{[\alpha+\beta]}\right\}

常用数学运算符

注:想要表达非的概念只需前加\not,会添加删除斜线,如:\not=显示 \not=\not\in显示 ∉\not\in

基础符号

运算符 说明 应用举例 命令
+ x+yx+y x+y
- xyx-y x-y
\times 叉乘 x×yx \times y x \times y
\cdot 点乘 xyx \cdot y x \cdot y
\ast(*) 星乘 xyx \ast y x \ast y
\div x÷yx \div y x \div y
\pm 加减 x±yx \pm y x \pm y
\mp 减加 xyx \mp y x \mp y
= 等于 x=yx=y x=y
\leq 小于等于 xyx \leq y x \leq y
\geq 大于等于 xyx \geq y x \geq y
\approx 约等于 xyx \approx y x \approx y
\equiv 恒等于 xyx \equiv y x \equiv y
\bigodot 同或 xyx \bigodot y x \bigodot y
\bigtimes 异或 xyx \bigotimes y x \bigotimes y

集合符合

运算符 说明 应用举例 命令
\in 属于 xyx \in y x \in y
\subset 子集 xyx \subset y x \subset y
\subseteq 真子集 xyx \subseteq y x \subseteq y
\supset 超集 xyx \supset y x \supset y
\supseteq 超集 xyx \supseteq y x \supseteq y
\varnothing 空集 \varnothing \varnothing
\cup xyx \cup y x \cup y
\cap xyx \cap y x \cap y

字母修饰

运算符 说明 应用举例 命令
\overline 平均数(上划线) a\overline a \overline a
\underline 下划线 a\underline a \underline a
\overbrace 上大括号 a+b+c1.0+d2.0\overbrace{a+\underbrace{b+c}_{1.0}+d}^{2.0} \overbrace{a+\underbrace{b+c}_{1.0}+d}^
\underbrace 下大括号 a+d3\underbrace{a+d}_3 \underbrace{a+d}_3

杂项

运算符 说明 应用举例 命令
\partial 偏导数 zx\frac{\partial z}{\partial x} \frac{\partial z}
\ldots 底端对齐的省略号 1,2,,n1,2,\ldots,n 1,2,\ldots,n
\cdots 中线对齐的省略号 1,2,,n1,2,\cdots,n 1,2,\cdots,n
\uparrow 上箭头 \uparrow \uparrow
\Uparrow 双上箭头 \Uparrow \Uparrow
\downarrow 下箭头 \downarrow \downarrow
\Downarrow 双下箭头 \Downarrow \Downarrow
\leftarrow 左箭头 \leftarrow \leftarrow
\Leftarrow 双左箭头 \Leftarrow \Leftarrow
\rightarrow 右箭头 \rightarrow \rightarrow
\Rightarrow 双右箭头 \Rightarrow \Rightarrow
\sim 波浪号 XN(μ,σ2)X \sim N(\mu,\sigma^2) X \sim N(\mu,\sigma^2)

MathJax 支持的 Latex 符号总结(各种箭头符号)

求和、极限与积分

求和

  • 求和符号\sum显示为 \sum
  • 举例:\sum_{i=0}^n显示为 i=0n\sum_{i=0}^n
  • 举例:\displaystyle\sum_{i=0}^n[2]显示为 i=0n\displaystyle\sum_{i=0}^n

极限

  • 极限符号\lim显示为 lim\lim
  • 举例:\lim_{x\to\infty}显示为 limx\lim_{x\to\infty}
  • 举例:\displaystyle\lim_{x\to\infty}显示为 limx\displaystyle\lim_{x\to\infty}

积分

积分符号

显示 命令
\int \int
\iint \iint
\iiint \iiint
\oint \oint

举例:\int_0^\infty{fxdx}显示为 0fxdx\int_0^\infty{fxdx}

分式与根式

分式

  • \frac{公式1}{公式2}显示为 公式1公式2\frac{公式1}{公式2}
  • 举例:bi2ai2\frac{b_i^2}{a_i^2}

根式

\sqrt[x]{y}显示为 yx\sqrt[x]{y}

特殊函数

  • \函数名
  • 举例:\sin x\ln x\log_n^2 5\max(A,B,C)显示为 sinxsin ⁡ xlnx\ln xlogn25\log_n^2 5max(A,B,C)\max(A,B,C)

特殊符号

命令 显示 命令 显示
\infty \infty \partial \partial
\nabla \nabla \triangle \triangle
\forall \forall \exists \exists
\lnot ¬\lnot

矩阵

基本语法

  • 起始标记:\begin{matrix},结束标记:\end{matrix}
  • 每一行末尾标记\\,行间元素之间以&分隔
  • 举例:
$$\begin{matrix}
1&0&0\\
0&1&0\\
0&0&1\\
\end{matrix}$$

显示为:

100010001\begin{matrix} 1&0&0\\ 0&1&0\\ 0&0&1\\ \end{matrix}

矩阵边框

在起始、结束标记处用下列词替换 matrix

类型 命令 矩阵边框显示效果
小括号边框 pmatrix (100010001)\begin{pmatrix} 1&0&0\\ 0&1&0\\ 0&0&1\\ \end{pmatrix}
中括号边框 bmatrix [100010001]\begin{bmatrix} 1&0&0\\ 0&1&0\\ 0&0&1\\ \end{bmatrix}
大括号边框 Bmatrix {100010001}\begin{Bmatrix} 1&0&0\\ 0&1&0\\ 0&0&1\\ \end{Bmatrix}
单竖线边框 vmatrix 100010001\begin{vmatrix} 1&0&0\\ 0&1&0\\ 0&0&1\\ \end{vmatrix}
双竖线边框 Vmatrix 100010001\begin{Vmatrix} 1&0&0\\ 0&1&0\\ 0&0&1\\ \end{Vmatrix}

省略元素

  • 横省略号:\cdots
  • 竖省略号:\vdots
  • 斜省略号:\ddots
  • 举例:
$\begin{bmatrix}
{a_{11}}&{a_{12}}&{\cdots}&{a_{1n}}\\
{a_{21}}&{a_{22}}&{\cdots}&{a_{2n}}\\
{\vdots}&{\vdots}&{\ddots}&{\vdots}\\
{a_{m1}}&{a_{m2}}&{\cdots}&{a_{mn}}\\
\end{bmatrix}$

显示为:
[a11a12a1na21a22a2nam1am2amn]\begin{bmatrix} {a_{11}}&{a_{12}}&{\cdots}&{a_{1n}}\\ {a_{21}}&{a_{22}}&{\cdots}&{a_{2n}}\\ {\vdots}&{\vdots}&{\ddots}&{\vdots}\\ {a_{m1}}&{a_{m2}}&{\cdots}&{a_{mn}}\\ \end{bmatrix}

阵列

  • 需要 array 环境:起始、结束处以 {array} 声明
  • 对齐方式:在 {array} 后以 {} 逐行统一声明
  • 左对齐:l;居中:c;右对齐:r
  • 竖直线:在声明对齐方式时,插入|建立竖直线
  • 插入水平线:\hline
  • 举例:
$$\begin{array}{c|lll}
{↓}&{a}&{b}&{c}\\
\hline {R_1}&{c}&{b}&{a}\\
{R_2}&{b}&{c}&{c}\\
\end{array}$$

abcR1cbaR2bcc\begin{array}{c|lll} {↓}&{a}&{b}&{c}\\ \hline {R_1}&{c}&{b}&{a}\\ {R_2}&{b}&{c}&{c}\\ \end{array}

方程组

  • 需要cases环境:起始、结束处以{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}$$

{a1x+b1y+c1z=d1a2x+b2y+c2z=d2a3x+b3y+c3z=d3\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}

  • 线段 (x1, y1) - (x2, y2) 的参数方程为
$$
\begin{cases}
x = x_1 + t_1(x_2 - x_1) \\\\
y = y_1 + t_1(y_2 - y_1)
\end{cases}
\quad t_1 \in [0,1]
$$

{x=x1+t1(x2x1)y=y1+t1(y2y1)t1[0,1]\begin{cases} x = x_1 + t_1(x_2 - x_1) \\\\ y = y_1 + t_1(y_2 - y_1) \end{cases} \quad t_1 \in [0,1]

大括号右多行赋值(分支等式)

双 \\ 公式内换行,cases 实现大括号右多行赋值,& 用于列对齐
注意:为了和 marked.js 兼容,公式内改为4个反斜线 \\\\ 换行。

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

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

又比如最长公共子序列的动态规划递推公式:

$$
lcs[i,j] =
\begin{cases}
0, & \text{if $i = 0$ or $j = 0$ } \\\\
cls[i-1, j-1] + 1,  & \text{if $i,j > 0$ and $x_i = y_j$ } \\\\
max(cls[i-1][j], cls[i][j-1]), & \text{if $i,j > 0$ and $x_i \neq y_j$ }
\end{cases}
$$

lcs[i,j]={0,if i=0 or j=0 cls[i1,j1]+1,if i,j>0 and xi=yj max(cls[i1][j],cls[i][j1]),if i,j>0 and xiyj lcs[i,j] = \begin{cases} 0, & \text{if $i = 0$ or $j = 0$ } \\\\ cls[i-1, j-1] + 1, & \text{if $i,j > 0$ and $x_i = y_j$ } \\\\ max(cls[i-1][j], cls[i][j-1]), & \text{if $i,j > 0$ and $x_i \neq y_j$ } \end{cases}


参考文章:
  1. Mathjax语法总结
  2. 常用数学公式排版KaTex语法总结
  3. MathJax数学公式 (masikkk.com)

  1. 这里使用转义字符,因为{}有分组的功能. ↩︎

  2. 这里的\displaystyle是为了显示成文内公式的模样. ↩︎

Q.E.D.

本文由 ruchan 创作,如果您觉得本文不错,请随意赞赏
采用 知识共享署名4.0 国际许可协议进行许可,转载前请务必署名
本文链接:https://crcrc.cn/archives/mathjax-grammar
最后更新于:2022-06-02 01:15:33


Not afraid of the future, not thinking of the past.