跳到主要内容

数学公式

Markdown 支持使用 LaTeX 语法编写数学公式,通过 MathJax 或 KaTeX 渲染。数学公式是技术文档、学术论文、科学计算领域不可或缺的组成部分。

本章将详细介绍如何在 Markdown 中编写专业级的数学公式。

基本语法

数学公式分为行内公式和块级公式两种形式,两者的区别在于公式的显示位置和排版方式。

行内公式

行内公式嵌入在正文文字中,使用单个美元符号 $ 包围:

质能方程 $E = mc^2$ 揭示了质量和能量的等价关系。
二次方程的求根公式是 $x = \frac{-b \pm \sqrt{b^2-4ac}}{2a}$。

渲染效果:质能方程 E=mc2E = mc^2 揭示了质量和能量的等价关系。二次方程的求根公式是 x=b±b24ac2ax = \frac{-b \pm \sqrt{b^2-4ac}}{2a}

何时使用行内公式:

  • 简短的数学表达式
  • 在句子中引用的变量或符号
  • 不需要单独强调的公式

块级公式

块级公式独占一行或多行,使用双美元符号 $$ 包围,适合复杂的公式:

$$
E = mc^2
$$

渲染效果:

E=mc2E = mc^2

何时使用块级公式:

  • 重要或复杂的公式
  • 需要编号的公式
  • 多行对齐的公式组
  • 矩阵、方程组等大型结构

公式编号

部分渲染器支持公式编号,使用 \tag{} 命令:

$$
E = mc^2 \tag{1}
$$

渲染效果:

E=mc2(1)E = mc^2 \tag{1}

希腊字母

希腊字母是数学和科学表达中最常用的符号,分为大小写两种形式。

小写希腊字母

字母语法字母语法字母语法
α\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Δ\Delta\DeltaΘ\Theta\Theta
Λ\Lambda\LambdaΞ\Xi\XiΠ\Pi\Pi
Σ\Sigma\SigmaΦ\Phi\PhiΨ\Psi\Psi
Ω\Omega\Omega

变体希腊字母

某些希腊字母有变体形式:

$\epsilon$ 与 $\varepsilon$
$\theta$ 与 $\vartheta$
$\pi$ 与 $\varpi$
$\rho$ 与 $\varrho$
$\sigma$ 与 $\varsigma$
$\phi$ 与 $\varphi$

渲染效果:ϵ\epsilonε\varepsilonθ\thetaϑ\varthetaϕ\phiφ\varphi

使用建议: 在数学文献中,ε\varepsilon 常用于表示"小量",φ\varphi 常用于表示角度。

上下标与修饰符

上标

使用 ^ 表示上标,上标可以是单个字符或用花括号包围的多个字符:

$x^2$ 平方
$x^{10}$ 多字符上标
$x^{n+1}$ 表达式上标
$e^{i\pi} + 1 = 0$ 欧拉公式

渲染效果:x2x^2x10x^{10}xn+1x^{n+1}eiπ+1=0e^{i\pi} + 1 = 0

下标

使用 _ 表示下标,规则与上标相同:

$x_1$ 单字符下标
$x_{i,j}$ 多字符下标
$a_{n-1}$ 表达式下标
$\sum_{i=1}^{n}$ 同时使用上下标

渲染效果:x1x_1xi,jx_{i,j}an1a_{n-1}i=1n\sum_{i=1}^{n}

上下标组合

$x_1^2$ 先下后上
$^{13}C$ 左上标(同位素)
$_{92}U$ 左下标(原子序数)
${}_{i}^{j}A$ 左上左下标

渲染效果:x12x_1^213C^{13}C92U_{92}UijA{}_{i}^{j}A

导数与撇号

$f'$ 一阶导数
$f''$ 二阶导数
$f^{(n)}$ n 阶导数
$\dot{x}$ 一阶时间导数
$\ddot{x}$ 二阶时间导数

渲染效果:ff'ff''f(n)f^{(n)}x˙\dot{x}x¨\ddot{x}

向量与平均

$\vec{a}$ 向量(箭头)
$\bar{x}$ 平均值
$\hat{x}$ 估计值
$\tilde{x}$ 变量变体
$\widehat{AB}$ 宽帽子
$\overline{AB}$ 上划线
$\underline{AB}$ 下划线

渲染效果:a\vec{a}xˉ\bar{x}x^\hat{x}x~\tilde{x}AB^\widehat{AB}AB\overline{AB}AB\underline{AB}

运算符号

基本运算符

符号语法说明示例
+++加法a+ba + b
--减法aba - b
×\times\times乘法a×ba \times b
÷\div\div除法a÷ba \div b
\cdot\cdot点乘aba \cdot b
±\pm\pm加减a±ba \pm b
\mp\mp减加aba \mp b

高级运算符

$\ast$ 星号
$\star$ 五角星
$\circ$ 圆圈
$\bullet$ 实心圆点
$\oplus$ 圈加
$\otimes$ 圈乘
$\odot$ 圈点
$\dagger$ 匕首
$\ddagger$ 双匕首

渲染效果:\ast\star\circ\bullet\oplus\otimes\odot

关系符号

比较关系

符号语法含义
===等于
\neq\neq不等于
<<<小于
>>>大于
\leq\leq小于等于
\geq\geq大于等于
\ll\ll远小于
\gg\gg远大于

近似与等价

$\approx$ 约等于
$\equiv$ 恒等于
$\sim$ 相似
$\simeq$ 相似或等于
$\cong$ 全等
$\propto$ 正比于
$\doteq$ 点等于

渲染效果:\approx\equiv\sim\simeq\cong\propto

集合关系

$\in$ 属于
$\notin$ 不属于
$\ni$ 包含(元素视角)
$\subset$ 真子集
$\supset$ 真超集
$\subseteq$ 子集
$\supseteq$ 超集
$\cup$ 并集
$\cap$ 交集
$\setminus$ 差集
$\emptyset$ 空集

渲染效果:\in\notin\subset\supset\subseteq\cup\cap\emptyset

箭头符号

基本箭头

$\leftarrow$ 或 $\gets$ 左箭头
$\rightarrow$ 或 $\to$ 右箭头
$\leftrightarrow$ 双向箭头
$\Rightarrow$ 右双箭头
$\Leftarrow$ 左双箭头
$\Leftrightarrow$ 双向双箭头

渲染效果:\leftarrow\rightarrow\leftrightarrow\Rightarrow\Leftarrow\Leftrightarrow

长箭头

$\longrightarrow$ 长右箭头
$\Longrightarrow$ 长右双箭头
$\mapsto$ 映射箭头
$\longmapsto$ 长映射箭头

渲染效果:\longrightarrow\Longrightarrow\mapsto

方向箭头

$\uparrow$ $\downarrow$ $\updownarrow$
$\Uparrow$ $\Downarrow$ $\Updownarrow$
$\nearrow$ $\searrow$ $\swarrow$ $\nwarrow$

渲染效果:\uparrow\downarrow\nearrow\searrow

分数与根号

分数

分数使用 \frac{分子}{分母} 语法:

$\frac{1}{2}$ 简单分数
$\frac{a+b}{c+d}$ 复杂分数
$\frac{\frac{1}{x}+1}{y}$ 嵌套分数

渲染效果:12\frac{1}{2}a+bc+d\frac{a+b}{c+d}1x+1y\frac{\frac{1}{x}+1}{y}

行内分数优化

行内公式中,分数可能显得拥挤,可以使用 \dfrac(display fraction):

普通:$\frac{a+b}{c+d}$
优化:$\dfrac{a+b}{c+d}$

连分数

$$
a_0 + \cfrac{1}{a_1 + \cfrac{1}{a_2 + \cfrac{1}{a_3}}}
$$

渲染效果:

a0+1a1+1a2+1a3a_0 + \cfrac{1}{a_1 + \cfrac{1}{a_2 + \cfrac{1}{a_3}}}

根号

$\sqrt{2}$ 平方根
$\sqrt[3]{8}$ 立方根
$\sqrt[n]{x}$ n 次方根
$\sqrt{x^2+y^2}$ 复杂根式

渲染效果:2\sqrt{2}83\sqrt[3]{8}xn\sqrt[n]{x}x2+y2\sqrt{x^2+y^2}

求和、积分与极限

求和

求和符号使用 \sum,上下限用 _^ 表示:

$\sum_{i=1}^{n} x_i$ 行内求和

$$
\sum_{i=1}^{n} x_i = x_1 + x_2 + \cdots + x_n
$$

渲染效果:i=1nxi\sum_{i=1}^{n} x_i

i=1nxi=x1+x2++xn\sum_{i=1}^{n} x_i = x_1 + x_2 + \cdots + x_n

双重求和:

$$
\sum_{i=1}^{m} \sum_{j=1}^{n} a_{ij}
$$

渲染效果:

i=1mj=1naij\sum_{i=1}^{m} \sum_{j=1}^{n} a_{ij}

积分

积分使用 \int,定积分的上下限用 _^ 表示:

$\int_{0}^{1} x^2 dx$ 定积分

$$
\int_{0}^{\infty} e^{-x^2} dx = \frac{\sqrt{\pi}}{2}
$$

渲染效果:01x2dx\int_{0}^{1} x^2 dx

0ex2dx=π2\int_{0}^{\infty} e^{-x^2} dx = \frac{\sqrt{\pi}}{2}

多重积分:

$$
\iint_D f(x,y) dA \quad \iiint_V f(x,y,z) dV
$$

渲染效果:

Df(x,y)dAVf(x,y,z)dV\iint_D f(x,y) dA \quad \iiint_V f(x,y,z) dV

环路积分:

$\oint_C \vec{F} \cdot d\vec{r}$ 闭合曲线积分

渲染效果:CFdr\oint_C \vec{F} \cdot d\vec{r}

极限

极限使用 \lim

$\lim_{x \to 0} \frac{\sin x}{x} = 1$

$$
\lim_{n \to \infty} \left(1 + \frac{1}{n}\right)^n = e
$$

渲染效果:limx0sinxx=1\lim_{x \to 0} \frac{\sin x}{x} = 1

limn(1+1n)n=e\lim_{n \to \infty} \left(1 + \frac{1}{n}\right)^n = e

连乘

连乘使用 \prod

$$
\prod_{i=1}^{n} x_i = x_1 \times x_2 \times \cdots \times x_n
$$

渲染效果:

i=1nxi=x1×x2××xn\prod_{i=1}^{n} x_i = x_1 \times x_2 \times \cdots \times x_n

三角函数与对数

三角函数

三角函数直接使用函数名(反斜杠前缀):

$\sin x$ $\cos x$ $\tan x$
$\cot x$ $\sec x$ $\csc x$

渲染效果:sinx\sin xcosx\cos xtanx\tan xcotx\cot x

反三角函数:

$\arcsin x$ $\arccos x$ $\arctan x$

渲染效果:arcsinx\arcsin xarccosx\arccos xarctanx\arctan x

双曲函数:

$\sinh x$ $\cosh x$ $\tanh x$

渲染效果:sinhx\sinh xcoshx\cosh xtanhx\tanh x

对数函数

$\log x$ 对数
$\ln x$ 自然对数
$\lg x$ 常用对数
$\log_2 x$ 以 2 为底的对数

渲染效果:logx\log xlnx\ln xlgx\lg xlog2x\log_2 x

矩阵

矩阵是线性代数的核心内容,LaTeX 提供多种矩阵环境。

基本矩阵

使用 matrix 环境(无括号):

$$
\begin{matrix}
a & b \\
c & d
\end{matrix}
$$

渲染效果:

abcd\begin{matrix} a & b \\ c & d \end{matrix}

带括号的矩阵

不同环境对应不同括号样式:

$$
\begin{pmatrix}
a & b \\
c & d
\end{pmatrix}
\quad
\begin{bmatrix}
a & b \\
c & d
\end{bmatrix}
\quad
\begin{Bmatrix}
a & b \\
c & d
\end{Bmatrix}
$$

渲染效果:

(abcd)[abcd]{abcd}\begin{pmatrix} a & b \\ c & d \end{pmatrix} \quad \begin{bmatrix} a & b \\ c & d \end{bmatrix} \quad \begin{Bmatrix} a & b \\ c & d \end{Bmatrix}
  • pmatrix:圆括号
  • bmatrix:方括号
  • Bmatrix:花括号

行列式与范数

$$
\begin{vmatrix}
a & b \\
c & d
\end{vmatrix}
= ad - bc
$$

渲染效果:

abcd=adbc\begin{vmatrix} a & b \\ c & d \end{vmatrix} = ad - bc

省略号

矩阵中使用省略号表示省略的元素:

$$
\begin{pmatrix}
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{pmatrix}
$$

渲染效果:

(a11a12a1na21a22a2nam1am2amn)\begin{pmatrix} 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{pmatrix}

省略号类型:

  • \cdots:水平居中省略号
  • \ldots:水平底部省略号
  • \vdots:垂直省略号
  • \ddots:对角线省略号

增广矩阵

使用 array 环境创建增广矩阵:

$$
\left[
\begin{array}{ccc|c}
1 & 2 & 3 & 4 \\
5 & 6 & 7 & 8 \\
9 & 10 & 11 & 12
\end{array}
\right]
$$

渲染效果:

[123456789101112]\left[ \begin{array}{ccc|c} 1 & 2 & 3 & 4 \\ 5 & 6 & 7 & 8 \\ 9 & 10 & 11 & 12 \end{array} \right]

方程组与分段函数

方程组

使用 cases 环境:

$$
\begin{cases}
x + y = 1 \\
x - y = 0
\end{cases}
$$

渲染效果:

{x+y=1xy=0\begin{cases} x + y = 1 \\ x - y = 0 \end{cases}

分段函数

分段函数是方程组的常见应用:

$$
f(x) = \begin{cases}
x^2, & x \geq 0 \\
-x^2, & x < 0
\end{cases}
$$

渲染效果:

f(x)={x2,x0x2,x<0f(x) = \begin{cases} x^2, & x \geq 0 \\ -x^2, & x < 0 \end{cases}

多条件分段

$$
f(x) = \begin{cases}
0, & x < 0 \\
x, & 0 \leq x < 1 \\
1, & x \geq 1
\end{cases}
$$

渲染效果:

f(x)={0,x<0x,0x<11,x1f(x) = \begin{cases} 0, & x < 0 \\ x, & 0 \leq x < 1 \\ 1, & x \geq 1 \end{cases}

多行公式对齐

align 环境

使用 align 环境进行多行对齐,& 指定对齐位置:

$$
\begin{aligned}
(a + b)^2 &= (a + b)(a + b) \\
&= a^2 + ab + ba + b^2 \\
&= a^2 + 2ab + b^2
\end{aligned}
$$

渲染效果:

(a+b)2=(a+b)(a+b)=a2+ab+ba+b2=a2+2ab+b2\begin{aligned} (a + b)^2 &= (a + b)(a + b) \\ &= a^2 + ab + ba + b^2 \\ &= a^2 + 2ab + b^2 \end{aligned}

多列对齐

$$
\begin{aligned}
x &= y & a &= b \\
x' &= y' & a' &= b'
\end{aligned}
$$

渲染效果:

x=ya=bx=ya=b\begin{aligned} x &= y & a &= b \\ x' &= y' & a' &= b' \end{aligned}

gather 环境

居中对齐的多行公式:

$$
\begin{gathered}
x = \frac{-b + \sqrt{b^2-4ac}}{2a} \\
x = \frac{-b - \sqrt{b^2-4ac}}{2a}
\end{gathered}
$$

渲染效果:

x=b+b24ac2ax=bb24ac2a\begin{gathered} x = \frac{-b + \sqrt{b^2-4ac}}{2a} \\ x = \frac{-b - \sqrt{b^2-4ac}}{2a} \end{gathered}

括号与定界符

括号类型

$( \ )$ 圆括号
$[ \ ]$ 方括号
$\{ \ \}$ 花括号
$\langle \ \rangle$ 尖括号
$| \ |$ 绝对值
$\| \ \|$ 范数
$\lfloor \ \rfloor$ 向下取整
$\lceil \ \rceil$ 向上取整

渲染效果:( )( \ )[ ][ \ ]{ }\{ \ \} \langle \ \rangle | \ | \| \ \||

自动调整大小

使用 \left\right 让括号自动适应内容大小:

固定大小:$(\frac{a}{b})$

自动调整:$\left(\frac{a}{b}\right)$

多层嵌套:$\left[\left(\frac{a}{b}\right)^2 + 1\right]$

渲染效果:固定大小:(ab)(\frac{a}{b}),自动调整:(ab)\left(\frac{a}{b}\right)

单侧括号

使用 \left.\right. 表示空定界符:

$$
\left.
\frac{dy}{dx}
\right|_{x=0} = 1
$$

渲染效果:

dydxx=0=1\left. \frac{dy}{dx} \right|_{x=0} = 1

空格与间距

LaTeX 默认会自动处理大多数空格,但有时需要手动调整。

空格命令

$a\!b$ 负空格(缩小)
$a\,b$ 小空格
$a\;b$ 中等空格
$a\ b$ 普通空格
$a\quad b$ 大空格
$a\qquad b$ 更大空格

渲染效果:a ⁣ba\!baba\,ba  ba\;ba ba\ baba\quad baba\qquad b

应用场景

$\int_0^1 x dx$ → $\int_0^1 x \, dx$ (dx 前添加空格)
$\sqrt{x}dy$ → $\sqrt{x} \, dy$ (dy 前添加空格)

文本与字体

公式中的文本

使用 \text{} 在公式中插入普通文本:

$$
P(A|B) = \frac{P(B|A) \cdot P(A)}{P(B)} \quad \text{(贝叶斯定理)}
$$

渲染效果:

P(AB)=P(BA)P(A)P(B)(贝叶斯定理)P(A|B) = \frac{P(B|A) \cdot P(A)}{P(B)} \quad \text{(贝叶斯定理)}

字体样式

$\mathbf{AB}$ 粗体
$\mathit{AB}$ 斜体
$\mathrm{AB}$ 罗马体
$\mathsf{AB}$ 无衬线体
$\mathtt{AB}$ 打字机体
$\mathcal{AB}$ 花体
$\mathbb{AB}$ 黑板粗体(用于数集)
$\mathfrak{AB}$ 哥特体

渲染效果:AB\mathbf{AB}AB\mathit{AB}AB\mathrm{AB}AB\mathsf{AB}AB\mathtt{AB}AB\mathcal{AB}AB\mathbb{AB}

数集符号

使用黑板粗体表示常用数集:

$\mathbb{N}$ 自然数集
$\mathbb{Z}$ 整数集
$\mathbb{Q}$ 有理数集
$\mathbb{R}$ 实数集
$\mathbb{C}$ 复数集

渲染效果:N\mathbb{N}Z\mathbb{Z}Q\mathbb{Q}R\mathbb{R}C\mathbb{C}

经典公式示例

二次方程求根公式

x=b±b24ac2ax = \frac{-b \pm \sqrt{b^2 - 4ac}}{2a}

泰勒展开式

f(x)=n=0f(n)(a)n!(xa)nf(x) = \sum_{n=0}^{\infty} \frac{f^{(n)}(a)}{n!}(x-a)^n

欧拉公式

eiπ+1=0e^{i\pi} + 1 = 0

傅里叶变换

f^(ξ)=f(x)e2πixξdx\hat{f}(\xi) = \int_{-\infty}^{\infty} f(x) e^{-2\pi i x \xi} dx

高斯积分

ex2dx=π\int_{-\infty}^{\infty} e^{-x^2} dx = \sqrt{\pi}

斯托克斯定理

SFdr=S(×F)dS\oint_{\partial S} \vec{F} \cdot d\vec{r} = \iint_S (\nabla \times \vec{F}) \cdot d\vec{S}

麦克斯韦方程组

E=ρϵ0B=0×E=Bt×B=μ0J+μ0ϵ0Et\begin{aligned} \nabla \cdot \mathbf{E} &= \frac{\rho}{\epsilon_0} \\ \nabla \cdot \mathbf{B} &= 0 \\ \nabla \times \mathbf{E} &= -\frac{\partial \mathbf{B}}{\partial t} \\ \nabla \times \mathbf{B} &= \mu_0 \mathbf{J} + \mu_0 \epsilon_0 \frac{\partial \mathbf{E}}{\partial t} \end{aligned}

薛定谔方程

itΨ=H^Ψi\hbar \frac{\partial}{\partial t} \Psi = \hat{H} \Psi

兼容性说明

渲染引擎比较

特性MathJaxKaTeX
渲染速度较慢极快
功能完整度非常完整大部分
自定义环境支持有限
公式编号原生支持需扩展

平台支持情况

平台渲染引擎特殊说明
GitHubMathJax支持 TeX 语法
GitLabKaTeX部分高级功能受限
ObsidianMathJax支持 \label\ref
TyporaMathJax支持导出 PDF
DocusaurusKaTeX可配置使用 MathJax

常见问题与解决方案

公式不渲染

检查以下几点:

  1. 确保使用正确的分隔符 $...$$$...$$
  2. 确保公式语法正确,括号配对
  3. 某些平台需要启用数学公式支持

特殊字符转义

在公式中使用特殊字符:

$\$\{\}$ 显示 $、{、}
$\text{a_b}$ 下划线在文本中

中文与公式混排

公式与中文之间建议添加空格:

推荐:当 $x > 0$ 时,函数单调递增。
不推荐:当$x>0$时,函数单调递增。

最佳实践

选择合适的公式形式

  • 简短表达式使用行内公式
  • 重要推导过程使用块级公式
  • 同一文档保持风格一致

保持源码可读性

推荐:
$$
\begin{aligned}
f(x) &= x^2 + 2x + 1 \\
&= (x + 1)^2
\end{aligned}
$$

不推荐:
$$f(x)=x^2+2x+1=(x+1)^2$$

添加必要说明

根据牛顿第二定律 $F = ma$,物体的加速度与作用力成正比。

方程的解为:
$$
x = \frac{-b \pm \sqrt{b^2-4ac}}{2a}
$$
其中 $a \neq 0$,判别式 $\Delta = b^2-4ac$ 决定解的性质。

小结

本章详细介绍了 Markdown 中数学公式的编写方法:

  1. 基本语法:行内公式 $...$,块级公式 $$...$$
  2. 希腊字母:大小写及变体形式
  3. 上下标与修饰符:导数、向量、平均等
  4. 运算与关系符号:算术、比较、集合运算
  5. 复杂结构:分数、根号、求和、积分、矩阵
  6. 多行公式:对齐、方程组、分段函数
  7. 经典公式:泰勒展开、傅里叶变换等
  8. 最佳实践:保持可读性、添加说明

掌握这些语法后,你可以编写专业级的数学文档。

练习

  1. 编写二次方程 ax2+bx+c=0ax^2 + bx + c = 0 的求根公式,并解释判别式的意义
  2. 创建一个 3×3 矩阵,并计算其行列式
  3. 使用对齐环境展示 (a+b)3(a+b)^3 的展开过程
  4. 编写一个分段函数的完整定义,包括定义域说明
  5. 将柯西-施瓦茨不等式写成公式形式