MathJax基础教程与快速参考
MathJax是一款运行在浏览器中的开源的数学符号渲染引擎,使用MathJax可以方便的在浏览器中显示数学公式,不需要使用图片。可以解析LaTex、MathML和ASCIIMathMl的标记语言。
在Stack Exchange上有一篇基础教程MathJax basic tutorial and quick reference很值得学习,顺便翻译一下。
- 有两种公式显示形式,一种是嵌入在行内的公式,写在
$...$
内;另一种是单独展示的公式,使用$$...$$
。这两种方式的渲染效果不同,如下所示:
$\sum_{i=0}^n i^2 = \frac{(n^2+n)(2n+1)}{6}\tag{inline}$
$$\sum_{i=0}^n i^2 = \frac{(n^2+n)(2n+1)}{6}\tag{displayed}$$
∑ni=0i2=(n2+n)(2n+1)6(inline)
希腊字母,小写形式,使用
\alpha, \beta, ..., \omega
,如:α,β,...,ω;大写形式,使用\Gamma, \Delta, ..., \Omega
,如:Γ,Δ,...,Ω。下标与上标符号,分别为
^
与_
,如:x_i^2
:x2i。上标、下标以及其它操作符只作用于下一个组。一个组可以是单个符号,或者是由花括号
{...}
括起来的公式。例如使用10^10来表示10的10次方,但是会显示成1010,可以使用$10^{10}$
来正确显示1010。使用花括号界定公式中应用上标或下标的更多例子如下:x^5^6
:x^5^6是错误的用法;{x^y}^z
表示xyz,x^{y^z}
表示xyz。另外,观察一下x_i^2
x2i与x_{i^2}
xi2之间的区别。小括号与中括号
() []
都是普通的符号()[],可以直接使用。如果想使用大括号{}
,则需要使用转义字符\{\}
{}。
不过这些括号直接用在公式中是没有大小尺度变化的,因此在一些公式中会显的特别小,如:(\frac{\sqrt x}{y^3})
(x√y3)。可以在括号前使用\left( ... \right)
解决这一问题,使之自动调整括号在公式中的显示大小,如:\left(\frac{\sqrt x}{y^3}\right)
(x√y3)。
\left和\right可以用在如下一类的括号中:(
与)
(x),[
与]
[x],\{
与\}
或\lbrace
与\rbrace
{x},|
|x|,\langle
与\rangle
⟨x⟩,\lceil
与\rceil
⌈x⌉,\lfloor
与\rfloor
⌊x⌋。另外,也可以使用.
隐藏括号,使之不显示,如:\left.\frac{1}{2}\right\rbrace
12}。求和符∑与积分符∫,分别为
\sum
与\int
。使用求和符与积分符时,需要指定上下标,如:\sum_i^n
∑ni。特别需要注意的是,如果角标不是单个字符时需要使用花括号{...}
,如:\sum_{i=0}^{\infty} i^2
∑∞i=0i2,求积符\prod
∏、求积分符\int
∫、并集符\bigcup
⋃、交集符\bigcap
⋂、双重积分符\iint
∬等类似。分数,有两种方式实现分数,一种是
\frac ab
ab,\frac {a+1}{b+1}
a+1b+1;另一种是使用\over
a+1b+1。字体。
\mathbb
或\Bbb
blackboard bold:ABCabc。\mathbf
boldface:ABCabc。\mathtt
typewritter font:ABCabc。\mathrm
roman font:ABCabc。\mathsf
sans-serif font:ABCabc。\mathcal
calligraphic letters:ABCabc。\mathscr
script letters:ABCabc。\mathfrak
Fraktur letters:ABCabc。
开根号
\sqrt
\sqrt,\sqrt{x^3}
x3−−√,\sqrt[3]{\frac xy}
xy−−√3。对于更复杂的表达式,可以考虑使用{...}^{1/2}
代替。一些特殊的函数,如
lim
,sin
,max
,ln
等,使用\sin
,\lim
表示正弦函数sinx,而不是$sin x$
表示正弦函数sinx,其它类似。对于\lim
,可以附加一个下标记号,如:\lim_{x \to 0}
limx→0。此外,还有大量的特殊符号与记法,这里列举一些最常用的,更加详细的符号说明参见The Comprehensive LaTex Symbol与LaTeX and AMS-LaTex Symbols。
- 关系操作符:
\lt \gt \le \ge \neq
<,>,≤,≥,≠,也可以在这些符号前加上\not
表示非,如:\not\lt
≮。 - 算术操作符:
\times \div \pm \mp
×,÷,±,∓。\cdot
表示居中的点x⋅y。 - 集合操作符:
\cup \cap \setminus \subset \subseteq \subsetneq \supset \in \notin \emptyset \varnothing
∪∩∖⊂⊆⊊⊃∈∉∅∅。 - 排列组合:
{n+1 \choose 2k}
或\binom{n+1}{2k}
(n+12k)。 - 箭头:
\to \rightarrow \leftarrow \Rightarrow \Leftarrow \mapsto
→→←⇒⇐↦。 - 逻辑操作符:
\land \lor \lnot \forall \exists \top \bot \vdash \vDash
∧∨¬∃∀⊤⊥⊢⊨。 \star \ast \oplus \circ \bullet
⋆∗⊕∘∙\approx \sim \simeq \cong \equiv \prec
≈∼≃≅≡≺。\infty \aleph_0
∞ℵ0\nabla \partial
∇∂\Im \Re
IR。- 对于求模值,使用
\pmod
:a\equiv b\pmod n a≡b(modn)。 - 省略号:
\ldots
a1,a2,…,an 与\cdots
a1+a2+⋯+an。 - 希腊字符做变量的形式:
\epsilon, \varepsilon
ϵ,ε,\phi \varphi
ϕφ。以及其它的角标小写字母,如:\ell
ℓ。
*顶部符号:\hat
x^\widehat
xyˆ\overline
xy¯¯¯¯\overrightarrow
x→\dot
x˙\ddot
x¨。
- 关系操作符:
空格
\, \; \quad \qquad
a\,b a\;b a \quad b a \qquad b
ab ab ab ab。矩阵:使用
$$\begin{matrix}…\end{matrix}$$
这样的形式来表示矩阵,在\begin{matrix}`与`\end{matrix}
之间加入矩阵中的元素即可。矩阵的行之间使用\分隔,列之间使用&分隔。如:\begin{matrix} 1&0&0 \\ 0&1&0 \\ 0&0&1 \end{matrix}
100010001。带括号的矩阵:
{matrix}
替换为{pmatrix}、{bmatrix}、{Bmatrix}、{vmatrix}、{Vmatrix}
。同样也可以使用\left \right
。如:(1001)(pmatrix)
[1001](bmatrix)
{1001}(Bmatrix)
∣∣∣1001∣∣∣(vmatrix)
∥∥∥1001∥∥∥(Vmatrix)矩阵中省略元素:
\cdots
⋯,\ddots
⋱,\vdots
⋮。如:⎛⎝⎜⎜⎜⎜⎜12⋮n12⋮n⋯⋯⋱⋯12⋮n⎞⎠⎟⎟⎟⎟⎟方程组使用
\begin{array}...\end{array}
与\left{...\right.
,如:f(n)=\left\{\begin{array}{c} n/2, & \text{if n is even}\\3n+1, & \text{if n is odd}\end{array}\right.
f(n)={n/2,3n+1,if n is evenif n is odd
也可以使用\begin{cases}...\end{cases}
,此时不需要\left
与\right
,如:f(n)=\begin{cases}n/2, & \text{if n is even}\\3n+1, & \text{if n is odd}\end{cases}
f(n)={n/2,3n+1,if n is evenif n is odd
恩,就这些也基本够用了。更多内容请参见官网。
参考资料
1. MathJax basic tutorial and quick reference
2. MathJax
3. MathJax中文文档