摘要:
- 介绍如何在 hexo 的 next 主题下,编辑数学公式
- MathJax 下 latex 语法介绍
介绍
这篇文章本质上将应该不属于 markdown 文档的学习部分。这篇文章主要说的是 MathJax 下使用 Latex 进行数学公式的编写,所以更多的属于 Latex 的介绍。
在 hexo 的 next 主题下,启动 mathjax 编辑数学公式
如何在 Hexo 中添加数学公式?
- 在 hexo 主题下的配置文件中,将 # MathJax Support 下的 mathjax 下的设置为 true。
- 在每篇文章开始处添加: mathjax:true
这样的话,应该就是启动了其中自带的 MathJax 插件,这是一个 javascript 脚本库,用来专门在网页中显示公式。 如果你是编辑网页,并想在网页中添加数学公式,可以将下面的脚本添加到网页代码中:
<script type="text/javascript" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=default"></script>
MathJax 下 latex 语法介绍
在启动 MathJax 后便可以直接进行数学公式的编写了。
<a name="cankao">参考:</a>
- https://math.meta.stackexchange.com/questions/5020/mathjax-basic-tutorial-and-quick-reference
- https://artofproblemsolving.com/wiki/index.php/LaTeX:Symbols
正文:
注意,本文中的所有公式都可以点击右键,点击 Show Math As -> TeX Commands
进行查看。
行内与行间公式
在行内显示公式,使用 $...$
将公式包围。 在行间使用公式,使用 $$...$$
将其包围住。
例如: 这是一个行内的公式: ;而这是一个行间的公式:
两者的 latex 代码形式分别是:
$\frac{1}{x+y}$
$$\frac{1}{x+y}$$
希腊字母
在数学公式中,经常会出现希腊字母,具体的形式如下,首先是小写希腊字母:
Latex 表达式 | 对应的希腊字母 | Latex 表达式 | 对应的希腊字母 |
---|---|---|---|
\alpha | \beta | ||
\gamma | \delta | ||
\epsilon | \varepsilon | ||
\zeta | \eta | ||
\theta | \vartheta | ||
\iota | \kappa | ||
\lambda | \mu | ||
\nu | \xi | ||
\pi | \varpi | ||
\rho | \varrho | ||
\sigma | \varsigma | ||
\tau | \upsilon | ||
\phi | \varphi | ||
\chi | \psi | ||
\omega |
然后是 大写希腊字母:
Latex 表达式 | 对应的希腊字母 | Latex 表达式 | 对应的希腊字母 |
---|---|---|---|
\Gamma | \Delta | ||
\Theta | \Lambda | ||
\Xi | \Pi | ||
\Sigma | \Upsilon | ||
\Phi | \Psi | ||
\Omega |
基本的数学运算符
加减乘除
Latex 表达式 | 符号 | Latex 表达式 | 符号 |
---|---|---|---|
\pm | \mp | ||
\times | \div |
至于基本的加减符号可以直接在 $...$
、 $$...$$
中写入
其他的符号
Latex 表达式 | 符号 | Latex 表达式 | 符号 |
---|---|---|---|
\sqrt{x} | \sqrt[n]{x} | ||
a^x | a^{xyz} | ||
a^xyz | \cdot | ||
\dagger | \cap | ||
\cup | \vee | ||
\wedge | \circ | ||
\otimes | \oplus | ||
\odot | \star | ||
\log | \ln | ||
\sin x | \cos x | ||
\tan x | \cot x |
注意:
$\sin x$
: 与 $sin x$
: 的区别。 一个是罗马字体,一个是斜体。同样的情况对 cos
、log
等都适用。
除法表达式
举个例子:
$$\sum_{i=0}^n i^2 = \frac{(n^2+n)(2n+1)}{6}$$
:
$${a+1\over b+1}$$
:
使用 \frac{...}{...}
可以用来展示除法表达式。也可以在 {...}
中使用 \over
来标识除法表达式。
上标与下标
从上节中的乘方的例子可以看出,上标使用的是 ^
如果需要上标的元素不止一个,可以使用 {...}
将其括起来。 下标使用的是 _
同样可以使用 {...}
。
举例:
-
$x_i^2$
: -
$x_{i^2}$
: -
$\log_2 x
:
括号问题
对于中括号 []
和小括号 ()
可以直接在 $...$
写入 ()
或者 []
。 对于大括号 {}
则需要写为: \{
和 \}
,或者 \lbrace
\rbrace
注意: 在 Hexo Next 中 \
具有转义的意义,所有需要展示大括号的时候需要写为:\\{
和 \\{}
。
举例:
-
$(x)$
: -
$[x]$
: -
$\\{x\\}$
: -
$\lbrace x \rbrace$
:
问题: 上面的例子都没有问题,但是当括号中的式子比较大的时候,上面的表示则会有问题,因为括号的大小是固定的,不随表达式大小的变化而变化。
-
$(\frac{1}{\frac{1}{x+y}})$
: -
$[\frac{1}{\frac{1}{x+y}}]$
: -
$\\{\frac{1}{\frac{1}{x+y}}\\}$
:
很显然,这样并不合理,并不好看,解决的办法就是使用 \left
和 \right
,从而使得括号可以自动根据表达式的大小调整大小,例如:
-
$\left(\frac{1}{\frac{1}{x+y}}\right)$
: -
$\left[\frac{1}{\frac{1}{x+y}}\right]$
: -
$\left\\{\frac{1}{\frac{1}{x+y}}\right\\}$
: -
$\left\lbrace \frac{1}{\frac{1}{x+y}} \right\rbrace$
:
除过大小括号可以使用 \left
和 \right
自动调节大小外,还有其他的符号也可以使用这种方式。
Latex 表达式 | 符号 | Latex 表达式 | 符号 |
---|---|---|---|
\vert x | \Vert x | ||
x\vert | x\Vert | ||
\langle | \rangle | ||
\lceil | \rceil | ||
\lfloor | \rfloor |
求和、求积、积分
求和、求积举例:
-
$$\sum_{i=0}^n i^2 = \frac{(n^2+n)(2n+1)}{6}$$
: -
$$\sum_{i=0}^\infty i^2$$
: -
$$\sum_1^n i^2$$
: -
$$\prod_{i=1}^n i^2$$
:
积分举例:
-
$$\int_0^{10} x dx$$
: -
$$\iint_{x=0,y=0}^{x=10,y=20} xy dxdy$$
: -
$$\iiint xyz dxdydz$$
:
相似于求和 、积分的符号还有:
Latex 表达式 | 符号 | Latex 表达式 | 符号 |
---|---|---|---|
\bigcup | \bigcap |
极限符号:
描述集合的符号
Latex 表达式 | 符号 | Latex 表达式 | 符号 |
---|---|---|---|
\cup | \cap | ||
\setminus | \subset | ||
\subseteq | \subsetneq | ||
\supset | \supseteq | ||
\supsetneq | \in | ||
\notin | \emptyset |
<font color = green> 大小关系比较 </font>
Latex 表达式 | 符号 | Latex 表达式 | 符号 |
---|---|---|---|
\gt | \ge | ||
\lt | \le | ||
\neq | \sim | ||
\ll | \gg | ||
\doteq | \simeq | ||
\approx | \equiv |
箭头
Latex 表达式 | 符号 | Latex 表达式 | 符号 |
---|---|---|---|
\gets | \to | ||
\leftarrow | \rightarrow | ||
\Leftarrow | \Rightarrow | ||
\leftrightarrow | \Leftrightarrow |
更多的箭头形式,<a href="#cankao">请看参考2</a>
特殊符号
Latex 表达式 | 符号 | Latex 表达式 | 符号 |
---|---|---|---|
\infty | \nabla | ||
\partial |
导数与向量形式
Latex 表达式 | 符号 | Latex 表达式 | 符号 |
---|---|---|---|
\dot x | \ddot x | ||
\vec x | \vec {xy} | ||
\bar x | \overline x |
字体
- blackboard bold:
\mathbb{}
或者\Bbb{}
。
\mathbb{ABCDEFGHIJKLMNOPQRSTUVWXYZ}
:
\Bbb{abcdefghigklmnopqrstuvwxyz}
:
- boldface:
\mathbf{}
\mathbf{ABCDEFGHIJKLMNOPQRSTUVWXYZ}
:
- "typewriter" font:
\mathtt{}
\mathtt{ABCDEFGHIJKLMNOPQRSTUVWXYZ}
:
- roman font:
\mathrm{}
\mathrm{ABCDEFGHIJKLMNOPQRSTUVWXYZ}
:
- sans-serif font:
\mathsf{}
\mathsf{ABCDEFGHIJKLMNOPQRSTUVWXYZ}
:
- "calligraphic" letters:
\mathcal
\mathcal{ABCDEFGHIJKLMNOPQRSTUVWXYZ}
:
- script letters:
\mathscr{}
\mathscr{ABCDEFGHIJKLMNOPQRSTUVWXYZ}
:
- "Fraktur" (old German style) letters:
\mathfrak{}
\mathfrak{ABCDEFGHIJKLMNOPQRSTUVWXYZ}
:
空格与文本
在 MathJax 公式中,会自动忽略公式中的空格,例如 $ab$
$a b$
都是: 。为了在公式中加入空格,可以使用 \
\quad
\qquad
:
-
$a\ b$
: -
$a\quad b$
: -
$a\qquad b$
:
如果需要在公式中加入文本,可使用 \text{...}
:
$$\lbrace x \in \mathbf{R} | \text{x 是实数} \rbrace $$
:
矩阵
使用 $$\begin{matrix}…\end{matrix}$$
来书写矩阵。 在 \begin
与 \end
之间写入矩阵元素,即用元素替换 ...
。 矩阵的行与行之间使用 \\
隔开。 每行之间的元素使用 &
隔开。
注意: 在此处,矩阵的行与行之间需要使用 \\\\
隔开,因为转义的原因 \\
相当于 \
。
举例:
如果想要为矩阵加上括号,需要使用 pmatrix
bmatrix
Bmatrix
vmatrix
Vmatrix
代替原来的 matrix
。
在矩阵中使用省略号,\cdots
: 、 \ddots
: 和 \vdots
:
对于行内的矩阵,使用 smallmatrix
:
连等方程 Aligned equations
使用: \begin{align}…\end{align}
分情况定义 Definitions by cases (piecewise functions)
使用: \begin{cases}…\end{cases}
\\\\[2ex]
的作用是使得行间距变大。
<font color = red> 总结 </font>
以上介绍了 MathJax 下使用 Latex 编写数学公式的基本用法,看完上面的部分后,基本上就可以编写出自己需要些的公式了。 不详细的地方请注意参考给出的两个网站,那里面的信息都比较全面。
网友评论