python mathjax_MathJax(Markdown中的公式)的基本使用语法

本文主要介绍MathJax公式的基本语法。

插入公式

如果是在文本中插入公式,则用$...$。

如果公式自成段落,则使用$$...$$。

字体使用\mathbb或\Bbb来显示黑板粗体字,$\mathbb{NQRZ}$

使用\mathbf来显示粗体字,$\mathbf {ABCDabcd}$

使用\mathtt来显示打印式字体,$\mathtt{ABCDabcd}$

使用\mathrm来显示罗马字体,$\mathrm{ABCDabcd}$

使用\mathcal来显示手写字体,$\mathcal{ABCDabcd}$

使用\mathscr来显示剧本字体,$\mathscr{ABCDabcd}$

使用\mathfrak来显示Fraktur字母(一种旧的德国字体),$\mathfrak{ABCDabcd}$

多行公式

如果要写出多行公式,就使用

\begin{equation}\begin{split}

end{split}\end{equation}

\\ 符号表示换行,再使用&符号表示要对齐的位置,例子如下

\begin{equation}\begin{split}

H(Y|X)&=\sum_{x\in X} p(x)H(Y|X)\\

&=-\sum_{x\in X} p(x)\sum_{y\in Y}p(y|x)\log p(y|x)\\

&=-\sum_{x\in X} \sum_{y\in Y}p(y,x)\log p(y|x)

\end{split}\end{equation}

当然,再加上$$...$$之后,显示如下:

$$\begin{equation}\begin{split}

H(Y|X)&=\sum_{x\in X} p(x)H(Y|X)\\

&=-\sum_{x\in X} p(x)\sum_{y\in Y}p(y|x)\log p(y|x)\\

&=-\sum_{x\in X} \sum_{y\in Y}p(y,x)\log p(y|x)

\end{split}\end{equation}$$

分组

通过大括号{}将操作数与符号分割开,消除二义性。

例如,若使用x^10,其效果为$x^10$,这里就要用到大括号,x^{10},最终效果为$x^{10}$。

空间

MathJax通常用自己的一套复杂策略来决定公式的空间距离。直接在两个元素之间加入空格是毫无用处的。

因此为了增加空间距离,使用\,可以增加稍许空间;使用\;可以增加更多的空间;\quad和\qquad分别对应更大的空间。

数学符号

上标与下标

上标或下标只需在后面加上^或_。另外需要注意的是,如果上下标不止一个字符,就需要用大括号括起来,表示是一个整体{...}。

分式

有两种方式做到这个效果。

使用\frac ab。如\frac {1+a}{4+b},效果为$\frac{1+a}{4+b}$;

使用a \over b。如{1+a} \over {4+b},效果为${1+a}\over {4+b}$。

一般推荐使用第二种。个人倾向于使用第一种。

根式

平方根: \sqrt{x^3},效果为 $\sqrt{x^3} $。

其余: \sqrt[4]{\frac xy},效果为 $\sqrt[4]{\frac xy}$。

关系比较符号< \lt

> \gt

≤ \le

≥ \ge

≠ \neq

$$\begin{array}{c|lcr}

\text{符号} & \text{\表示} \\

\hline

< & lt \\

> & gt \\

≤ & le \\

≥ & ge \\

≠ & neq \\

\end{array}$$

argmax\underset{f}{\mathrm{argmin}}

效果如下:

$$\underset{f}{\mathrm{argmin}}$$

不显示斜体

对于常量部分,有时候我们不想让他显示成斜体,而是正常的竖直显示,可加上\text{...},就可以正常显示。

矩阵

使用$$\begin{matrix}…\end{matrix}$$,每一行末用\\结束表示换行,用&分隔矩阵元素。

$$

\begin{matrix}

1 & 0 & 0 \\

0 & 1 & 0 \\

0 & 0 & 1 \\

\end{matrix}

$$

效果:

$$

\begin{matrix}

1 & 0 & 0 \\

0 & 1 & 0 \\

0 & 0 & 1 \\

\end{matrix}

$$

如果要加括号,可以使用上面的括号符号。

除此之外,还可以直接将matrix替换为pmatrix(小括号),或者bmatrix(中括号),或者Bmatrix(大括号),或者vmatrix(竖线),或者Vmatrix(是双竖线)

如果你想省略一些项,可以使用\cdots⋯,\ddots⋱,\vdots⋮。

如:

$$

\begin{pmatrix}

1 & a_1 & a_1^2 & \cdots & a_1^n\\

1 & a_2 & a_2^2 & \cdots & a_2^n \\

\vdots & \vdots & \ddots & \vdots \\

1 & a_n & a_n^2 & \cdots & a_n^n \\

\end{pmatrix}

$$

效果:

$$

\begin{pmatrix}

1 & a_1 & a_1^2 & \cdots & a_1^n\\

1 & a_2 & a_2^2 & \cdots & a_2^n \\

\vdots & \vdots & \ddots & \vdots \\

1 & a_n & a_n^2 & \cdots & a_n^n \\

\end{pmatrix}

$$

代码块

不同语言的代码块,可以用不同的标识符。如python语言,则代码块表示为

1//下一行写具体代码

就是用三个反引号(英文状态下、键盘左上角、ESC下面的那个键)包围的部分就是代码块,上面的三个点号之后,可以标识一下具体的语言,如c,c++,python,java,javascript,yml,html等等。

测试:

JavaScript代码块效果如下:

1

2

3if (condition){

return true

}

Python代码块效果如下:

1

2

3def func(A):

'''intresting document.'''

return len(A)

你可能感兴趣的:(python,mathjax)