使用MathJax
时,需要用一些适当的标记告诉MathJax
某段文本是公式代码。此外,MathJax
中的公式排版有两种方式,inline
和displayed
。inline
表示公式嵌入到文本段中,displayed
表示公式独自成为一个段落(也就是居中显示)。例如 这是一个inline
公式,而下面:
这就是一个displayed
公式。
在MathJax
中,默认的displayed
公式分隔符有$$...$$
和\[...\]
,而默认的inline
公式分隔符是$...$
。
具体见下表:
名称 | 大写 | Tex | 小写 | Tex |
---|---|---|---|---|
alpha | \alpha | |||
beta | \beta | |||
gamma | \Gamma | \gamma | ||
delta | \Delta | \delta | ||
epsilon | \epsilon | |||
zeta | \zeta | |||
eta | \eta | |||
theta | \theta | \theta | ||
iota | \iota | |||
kappa | \kappa | |||
lambda | \Lambda | \lambda | ||
mu | \mu | |||
nu | \nu | |||
xi | \Xi | \xi | ||
omicron | \omicron | |||
pi | \Pi | \pi | ||
rho | \rho | |||
sigma | \Sigma | \sigma | ||
tau | \tau | |||
upsilon | \Upsilon | \upsilon | ||
phi | \Phi | \phi | ||
chi | \chi | |||
psi | \Psi | \psi | ||
omega | \Omega | \omega |
上标和下标分别用^
和_
,如x_i^2
:,但是^
和_
分别只对下一个数起作用,比如10^10
会得到而不是
,这事需要用{...}
把要组合的数组合起来,也就是10^{10}
。总之,加了大括号总归不会错。
()
和[]
: ;分组
,所以如果要在公式里面加大括号就使用\{
和\}
或者用\lbrace
和\rbrace
来表示。如\{a*b\}
:,\lbrace a*b \rbrace
:
;\langle
和\rangle
表示左右尖括号,\langle x \rangle
: ;\lceil
和\rceil
表示左右尖括号,\lceil x \rceil
: ;\lfloor
和\rfloor
表示左右尖括号,\lfloor x \rfloor
: ;\left.
和\right.
表示,\left. x\right.
:需要注意的是,原始的符号不会随着公式的变大而缩放,比如\frac{1}{2}
:。可以使用\left( ... \right)
进行缩放,如下:
\{ \sum_{i=0}^{n}i^2 = \frac {(n^2+n)(2n+1)}{6} \}
\left\{ \sum_{i=0}^{n}i^2 = \frac {(n^2+n)(2n+1)}{6} \right\}
\sum
用来表示求和符号,上标表示上限,下标表示下限。如,\sum_{i=1}^{n}i^2
:;\int
用来表示积分符号,上标表示上限,下标表示下限。如,\int_{1}^{\infty}i^2
:;\prod
:, \igcup
:, \bigcap
:,
\iint
:\frac{a}{b}
:。第二种表示为{a+1 \over b+1}
:;\sqrt
,比如\sqrt[4]{\frac {x}{y}}
:\mathbb
或者\Bbb
,这种字体常用来表示实数、整数、有理数、复数的大写字母,\mathbb A
:,或者\mathbb {ABCDEFGHIJKLMNOPQRSTUVWXYZ}
:;mathbf
, \mathbf A
:,或者\mathbf {ABCDEFGHIJKLMNOPQRSTUVWXYZ}
:;mathtt
, \mathtt A
:,或者\mathtt {ABCDEFGHIJKLMNOPQRSTUVWXYZ}
:;mathrm
, \mathrm A
:,或者\mathrm {ABCDEFGHIJKLMNOPQRSTUVWXYZ}
:;mathscr
, \mathscr A
:,或者\mathscr {ABCDEFGHIJKLMNOPQRSTUVWXYZ}
:;Fraktur
一种德国字体,例如 mathfrak
, \mathfrak A
:,或者\mathfrak {ABCDEFGHIJKLMNOPQRSTUVWXYZ}
:;\sin (x)
:, \arctan (x)
:, \lim_{1\rightarrow\infty}x
:
;\lt
:, \gt
:, \le
:,
\ge
:, \neq
:,同时如果在前面加上\not
就可以是 \not\lt
:;\times
:,\div
:,\pm
:,\mp
:
,x \cdot y
:;\cup
: ,\cap
: ,\setminus
: ,\subset
:
,\subseteq
: ,\subsetneq
: ,\supset
:
,\in
: ,\notin
: ,\emptyset
:
,\varnothing
: ;{n+1 \choose 2k}
或者\binom{n+1}{2k}
表示 ;\to
:,\rightarrow
:,\Rightarrow
:,\leftarrow
:
,\Leftarrow
:,\mapsto
:,\land
:,\lor
:,\lnot
:,\forall
:
,\exists
:,\top
:,\bot
:,\vdash
:
,\vDash
:;\star
:,\ast
:,\oplus
:,\circ
:
,\bullet
:;\approx
:,\sim
:,\cong
:,\equiv
:
,\prec
:;\infty
:,\aleph_0
:,\nabla
:,\partial
:
,\Im
:,\Re
:;a \pmod b
:, 例如 a\equiv b\pmod n
:;\ldots
: 与 \cdots
:,就是位置不一样的3个点;\epsilon
:,\varepsilon
:,\phi
:,\varphi
:
。由于MathJax
的空间管理比较特殊,所以 a.b
或者 a.........b
(…表示空格),都会显示为 a b
:,如果要增加间隙,可以使用 a\,b
:,较宽的间隙
a\;b
:,或者是使用 a\quad b
: 或 a\qquad b
:。还有一种比较方便的方法是不使用转义字符\
而是这样
a~b
:,可以表示一个空格。
对于单字符, \hat x
:,对于多个字符使用 \widehat {xy}
:,类似的还有 \overline {xy}
:,\vec {xy}
:
,\overrightarrow {xy}
:,\dot {xy}
:,\ddot {xy}
:,
可以使用 $$\begin{array}{列样式}…\end{array}$$
的方式来创建表格,其中列样式
可以clr
分别表示居中
左
右
,还可以用|
表示一条竖线。表格中每一行用\\
分隔,每一列使用 &
分隔,使用 \hline
在本行前面加一条直线,例如:
$$\begin{array}{c|lcr}n & \text{Left} & \text{Center} & \text{Right} \\\hline1 & 0.24 & 1 & 125 \\2 & -1 & 189 & -8 \\3 & -20 & 2000 & 1+10i \\\end{array}$$
一个可以复用的例子如下:
$$\begin{array}{c|ccc}n & \text{0} & \text{1} & \text{2} & \text{3}\\\hline1 & 1 & 2 & 3 & 4 \\2 & 2 & 3 & 4 & 5 \\3 & 3 & 4 & 5 & 6 \\4 & 4 & 5 & 6 & 7 \\\end{array}$$
使用$$\begin{matrix}…\end{matrix}$$
来表示矩阵,同样使用 \\
作为行分隔符,&
使用列分隔符。
例如:
$$\begin{matrix}1 & x & x^2 \\1 & y & y^2 \\1 & z & z^2 \\\end{matrix}$$
如果要加括号,可以使用\left
和\right
,也可以使用特殊的Matrix
,例如:
$$\left ( \begin{matrix}1 & x & x^2 \\1 & y & y^2 \\1 & z & z^2 \\\end{matrix}\right )$$
pmatrix
$$\begin{pmatrix}1 & x & x^2 \\1 & y & y^2 \\1 & z & z^2 \\\end{pmatrix}$$
bmatrix
$$\begin{bmatrix}1 & x & x^2 \\1 & y & y^2 \\1 & z & z^2 \\\end{bmatrix}$$
Bmatrix
$$\begin{Bmatrix}1 & x & x^2 \\1 & y & y^2 \\1 & z & z^2 \\\end{Bmatrix}$$
vmatrix
$$\begin{vmatrix}1 & x & x^2 \\1 & y & y^2 \\1 & z & z^2 \\\end{vmatrix}$$
Vmatrix
$$\begin{Vmatrix}1 & x & x^2 \\1 & y & y^2 \\1 & z & z^2 \\\end{Vmatrix}$$
可以使用\cdots
\ddots
\vdots
来省略矩阵中的元素,例如:
$$\begin{pmatrix}1 & x & x^2 & \cdots & x^n\\1 & y & y^2 & \cdots & y^n\\1 & z & z^2 & \cdots & z^n\\\vdots & \vdots & \vdots & \ddots & \vdots\\1 & n & n^2 & \cdots & n^n\\\end{pmatrix}$$
增广矩阵需要使用前面的array
来实现,例如:
$$ \left[\begin{array}{cc|c}1&2&3\\4&5&6\end{array}\right]$$
如果需要一系列的公式中等号对齐,可以使用\begin{align}…\end{align}
,其中使用 &
来对其位置,例如:
$$\begin{align}\sqrt{37} & = \sqrt{\frac{73^2-1}{12^2}} \\& = \sqrt{\frac{73^2}{12^2}\cdot\frac{73^2-1}{73^2}} \\& = \sqrt{\frac{73^2}{12^2}}\sqrt{\frac{73^2-1}{73^2}} \\& = \frac{73}{12}\sqrt{1 - \frac{1}{73^2}} \\& \approx \frac{73}{12}\left(1 - \frac{1}{2\cdot73^2}\right)\end{align}$$
分类表达式可以使用 \begin{cases}…\end{cases}
其中用&
指示对齐的位置,例如:
$$f(n) =\begin{cases}n/2, & \text{if $n$ is even} \\3n+1, & \text{if $n$ is odd} \\\end{cases}$$
上述公式的括号也可以移动到右侧,不过需要使用array
来实现,如下:
$$\left.\begin{array}{l}\text{if $n$ is even:}&n/2\\\text{if $n$ is odd:}&3n+1\end{array}\right\}=f(n)$$
最后,如果想分类之间的垂直间隔变大,可以使用\[2ex]
代替\
来分隔不同的情况。(3ex
,4ex
也可以用,1ex
相当于原始距离)。
$$f(n) =\begin{cases}n/2, & \text{if $n$ is even} \\[4ex]3n+1, & \text{if $n$ is odd} \\\end{cases}$$
不要在再指数或者积分中使用 \frac
,在指数或者积分表达式中使用 \frac
会使表达式看起来不清晰,因此在专业的数学排版中很少被使用。应该使用一个水平的/
来代替,效果如下:
$$\begin{array}{cc}\mathrm{Bad} & \mathrm{Better} \\\hline \\e^{i\frac{\pi}2} \quad e^{\frac{i\pi}2}& e^{i\pi/2} \\\int_{-\frac\pi2}^\frac\pi2 \sin x\,dx & \int_{-\pi/2}^{\pi/2}\sin x\,dx \\\end{array}$$
使用 \mid
代替 |
作为分隔符,符号 |
作为分隔符时有排版空间大小的问题,应该使用\mid
代替。效果如下:
$$\begin{array}{cc}\mathrm{Bad} & \mathrm{Better} \\\hline \\\{x|x^2\in\Bbb Z\} & \{x\mid x^2\in\Bbb Z\} \\\end{array}$$
对于多重积分,不要使用\int\int
此类的表达,应该使用\iint
\iiint
等特殊形式。效果如下:
$$\begin{array}{cc}\mathrm{Bad} & \mathrm{Better} \\\hline \\\int\int_S f(x)\,dy\,dx & \iint_S f(x)\,dy\,dx \\\int\int\int_V f(x)\,dz\,dy\,dx & \iiint_V f(x)\,dz\,dy\,dx\end{array}$$
书写连分数表达式时,请使用\cfrac
代替\frac
或者\over
两者效果对比如下:
$$x = a_0 + \cfrac{1^2}{a_1+ \cfrac{2^2}{a_2+ \cfrac{3^2}{a_3 + \cfrac{4^4}{a_4 + \cdots}}}} \tag{\cfrac}$$
$$x = a_0 + \frac{1^2}{a_1+ \frac{2^2}{a_2+ \frac{3^2}{a_3 + \frac{4^4}{a_4 + \cdots}}}} \tag{\frac}$$
对于方程组可以使用\begin{array} … \end{array}
与\left{…\right.
配合,表示方程组:
$$\left\{\begin{array}{c}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{array}\right.$$
同时,还可以使用\begin{cases}…\end{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}$$
对齐方程组中的 =
号,可以使用 \being{aligned} .. \end{aligned}
,如:
$$\left\{\begin{aligned}a_1x+b_1y+c_1z &=d_1+e_1 \\a_2x+b_2y&=d_2 \\a_3x+b_3y+c_3z &=d_3\end{aligned}\right.$$
如果要对齐 = 号 和项,可以使用\being{array}{列样式} … \end{array},如:
$$\left\{\begin{array}{ll}a_1x+b_1y+c_1z &=d_1+e_1 \\a_2x+b_2y &=d_2 \\a_3x+b_3y+c_3z &=d_3\end{array}\right.$$
命名颜色是浏览器相关的,如果浏览器没有定义相关的颜色名称,则相关文本将被渲染为黑色,具体列表如下:
$$\begin{array}{|rc|}\hline\verb+\color{black}{text}+ & \color{black}{text} \\\verb+\color{gray}{text}+ & \color{gray}{text} \\\verb+\color{silver}{text}+ & \color{silver}{text} \\\verb+\color{white}{text}+ & \color{white}{text} \\\hline\verb+\color{maroon}{text}+ & \color{maroon}{text} \\\verb+\color{red}{text}+ & \color{red}{text} \\\verb+\color{yellow}{text}+ & \color{yellow}{text} \\\verb+\color{lime}{text}+ & \color{lime}{text} \\\verb+\color{olive}{text}+ & \color{olive}{text} \\\verb+\color{green}{text}+ & \color{green}{text} \\\verb+\color{teal}{text}+ & \color{teal}{text} \\\verb+\color{aqua}{text}+ & \color{aqua}{text} \\\verb+\color{blue}{text}+ & \color{blue}{text} \\\verb+\color{navy}{text}+ & \color{navy}{text} \\\verb+\color{purple}{text}+ & \color{purple}{text} \\\verb+\color{fuchsia}{text}+ & \color{magenta}{text} \\\hline\end{array}$$
此外,HTML5
与CSS3
也定义了一些颜色名称。 同时,颜色也可以使用#rgb
的形式来表示,r
、g
、b
分别表示代表颜色值得16进制数,如:
$$\begin{array}{|rrrrrrrr|}\hline\verb+#000+ & \color{#000}{text} & & &\verb+#00F+ & \color{#00F}{text} & & \\& & \verb+#0F0+ & \color{#0F0}{text} && & \verb+#0FF+ & \color{#0FF}{text}\\\verb+#F00+ & \color{#F00}{text} & & &\verb+#F0F+ & \color{#F0F}{text} & & \\& & \verb+#FF0+ & \color{#FF0}{text} && & \verb+#FFF+ & \color{#FFF}{text}\\\hline\end{array}$$
使用\tag{yourtag}
来标记公式,如果想在之后引用该公式,则还需要加上\label{yourlabel}
在\tag
之后,如:
\[a := x^2-y^3 \tag{1-1}\label{ 1-1}\]
为了引用公式,可以使用\eqref{rlabel}
,如:
$$a+y^3 \stackrel{\eqref{1-1}}= x^2$$
Detexify
,一个数学符号查询手写识别系统,如图: