数学公式语法——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公式用$$...$$
    • 例如语句为$$W_G^{mn}=max\{0,W_G.\xi_G(f_G^m,f_G^n)\}$$
    • 显示为

      希腊字母

显示命令显示命令
$\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$

关系运算符

显示命令显示命令
$\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)能使符号大小与邻近公式相适应
    • (\frac{x}{y}),显示为$(\frac{x}{y})$
    • \left(\frac{x}{y}\right),显示为$\left(\frac{x}{y}\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
    • 举例:\sqrt[x]{y}呈现为$\sqrt[x]{y}$

      特殊函数

  • \函数名
    • 举例:\sin x\ln x\max(A,B,C)呈现为$sin x$,$ln x$,$max(A,B,C)$

      空格

  • LaTex语法会忽略空格,需要用转义字符\
    • 小空格:a\ b呈现为$a\ b$
    • 四个空格:a\quad b呈现为$a\quad b$

      矩阵

      基本语法

  • 起始标记\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语法,以后有用到新的会继续补充。

欢迎关注我的公众号

enter description here

-------------本文结束感谢您的阅读-------------
坚持原创技术分享,您的支持将鼓励我继续创作!
0%
;