数学公式语法——Mathjax教程
在着手写博客前,喜欢在“印象笔记”上记录学习笔记,当时觉得“印象笔记”的富文本编辑器用着还挺顺手。在搭建博客开始学着用Markdown写作后,再看原来在“印象笔记”中的笔记,格式排版真是惨不忍睹,Markdown的使用很大程度上提升了写作效率,也统一了排版。这里顺便推荐一款Markdown的编辑器——小书匠,小书匠支持标准的Markdown语法,也具有强大的语法扩展功能,支持大多数图床和“印象笔记”等第三方存储。
在上一篇博客《Relation Networks for Object Detection》论文笔记中由于论文中有不少公式需要介绍,又不想用图片代替影响阅读体验,好在Markdown支持Mathjax语法。但不得不说刚开始使用Mathjax编辑公式,还是很不习惯,几千字的博文,公式编辑花了很长时间。因此用这篇博文总结一下Mathjax的语法,搬砖的过程也让自己熟悉Mathjax。
Mathjax简介
Mathjax是一款运行在浏览器中的开源数学符号渲染引擎,使用MathJax可以方便的在浏览器中显示数学公式,不需要使用图片。
基本语法
- 在正文中同一行插入LaTeX公式用
$...$
定义- 例如语句为
$\sum_{i=0}^N\int_{a}^{b}g(t,i)\text{d}t$
- 显示为$\sum_{i=0}^N\int_{a}^{b}g(t,i)\text{d}t$
- 例如语句为
- 另起一行显示LaTeX公式用
$$...$$
显示 | 命令 | 显示 | 命令 |
---|---|---|---|
$\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$
- 若需要斜体希腊字母,将命令前加上var前缀即可。
关系运算符
显示 | 命令 | 显示 | 命令 |
---|---|---|---|
$\mid$ | \mid | $\nmid$ | \nmid |
$\cdot$ | \cdot | $\leq$ | \leq |
$\geq$ | \geq | $\neq$ | \neq |
$\approx$ | \approx | $\equiv$ | \equiv |
$\prec$ | \prec | $\preceq$ | \preceq |
$\ll$ | \ll | $\succ$ | \succ |
$\succeq$ | \succeq | $\gg$ | \gg |
$\sim$ | \sim | $\simeq$ | \simeq |
$\asymp$ | \asymp | $\cong$ | \cong |
$\doteq$ | \doteq | $\propto$ | \propto |
$\models$ | \models | $\parallel$ | \parallel |
$\bowtie$ | \bowtie | $\perp$ | \perp |
$\circ$ | \circ | $\ast$ | \ast |
$\bigodot$ | \bigodot | $\bigotimes$ | \bigotimes |
$\bigoplus$ | \bigoplus |
算术运算符
显示 | 命令 | 显示 | 命令 |
---|---|---|---|
$\pm$ | \pm | $\mp$ | \mp |
$\times$ | \times | $\ast$ | \ast |
$\star$ | \star | $\circ$ | \circ |
$\bullet$ | \bullet | $\cdot$ | \cdot |
$\div$ | \div | $\sum$ | \sum |
$\prod$ | \prod | $\coprod$ | \coprod |
$\oplus$ | \oplus | $\bigoplus$ | \bigoplus |
$\ominus$ | \ominus | $\otimes$ | \otimes |
$\bigotimes$ | \bigotimes | $\oslash$ | \oslash |
$\odot$ | \odot | $\bigodot$ | \bigodot |
$\diamond$ | \diamond | $\bigtriangleup$ | \bigtriangleup |
$\bigtriangledown$ | \bigtriangledown | $\triangleleft$ | \triangleleft$ |
$\triangleright$ | \triangleright | $\triangleright$ | \triangleright |
$\bigcirc$ | \bigcirc |
字母修饰
上下标
- 上标:
^
- 下标:
_
- 例如:
C_n^2
,显示为$C_n^2$矢量
\vec
a,显示为$\vec a$\overrightarrow{xy}
,显示为:$\overrightarrow{xy}$字体
- 打印机字体Typewriter:
\mathtt{A}
显示为$\mathtt{A}$ - 黑板粗体字Blackboard Bold:
\mathbb{A}
呈现为$\mathbb{A}$ - 无衬线字体Sans Serif:
\mathsf{A}
呈现为$\mathsf{A}$ - 手写体:
\mathscr{A}
呈现为$\mathscr{A}$ - 罗马字体:
\mathrm{A}
呈现为$\mathrm{A}$括号
- 小括号:
()
,显示为() - 中括号:
[]
,显示为[] - 尖括号:
\langle
,\rangle
呈现为⟨⟩ - 自适应括号:
\left(...\right)
能使符号大小与邻近公式相适应 - 求和:
\sum
- 举例:
\sum_{i=1}^n{a_i}
呈现为$\sum_{i=1}^n{a_i}$
- 举例:
- 极限:
\lim
- 举例:
\lim_{x\to 0}
呈现为$\lim_{x \to 0}$
- 举例:
- 积分:
\int
- 举例:
\int_0^xf(x)dx
呈现为$\int_0^xf(x)dx$
- 举例:
分式与根式
- 分式:
\frac
- 举例:
\frac{分子}{分母}
呈现为$\frac{分子}{分母}$
- 举例:
- 根式:
\sqrt
\函数名
- LaTex语法会忽略空格,需要用转义字符\
- 起始标记
\begin{matrix}``,结束标记``\end{matrix}
- 每一行末尾标记\\,行间元素以$分割
- 举例呈现为:
1
2
3
4
5$$\begin{matrix}
1&0&0\\
0&1&0\\
0&0&1\\
\end{matrix}$$矩阵边框
- 在起始、结束标记处用下列词替换matrix
- pmatrix:小括号边框
- bmatrix:中括号边框
- Bmatrix:大括号边框
- vmatrix:单竖线边框
- Vmatrix:双竖线边框
省略元素
- 横省略号:\cdots
- 竖省略号:\vdots
- 斜省略号:\ddots
- 举例呈现为:
1
2
3
4
5
6$$\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}$$方程组
- 需要cases环境:起始、结束处以{cases}声明
- 举例
1
2
3
4
5
6$$\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}
$$
公式编号
- 用
\tag{n}
标签 - 举例
f(x)=x\tag{1}
显示为$f(x)=x\tag{1}$
后记
以上列举的都是常用的Mathjax语法,以后有用到新的会继续补充。
欢迎关注我的公众号
-------------本文结束感谢您的阅读-------------