介绍
最近一直想在 CSDN 上写一些机器学习的博客,就免不了需要插入大量的公式和矩阵,在查看了很多博主的博客之后,发现 CSDN 的 markdown 编辑器支持部分 LaTex 功能,很是神奇,这篇文章就简单介绍一下一些比较常用的数学公式和矩阵的书写。
LaTex 是一个很强大的数学公式书写工具,虽然 CSDN 并不能支持其全部功能,但写一些数学公式是没有什么问题的。当然,也可以利用其它方式书写,例如,这篇文章就使用了一些其他的库。虽然也能很好地显示,但是我觉得并没有 LaTex 方便。LaTex 非常简单,容易上手,十分符合 markdown 简洁的排版风格。
公式书写
LaTex 中的公式书写主要有两种方式:行内公式和块级公式。公式中还可以添加公式的标号。
行内公式
行内公式是在文本中间,紧接着文章中的文字。我们可以利用 $...$
来书写行内公式,例如:
$x^n + y^m = z^t$
在博客中的显示为:
可以发现,符号中间的式子自动变为数学公式了,是不是很神奇?下面还有更高级的。
块级公式
块级公式在文章是独自占一行的且自动居中,块级公式是利用 $$...$$
来进行书写的,还是刚才的式子,就可以这样书写:
$$x^n + y^m = z^t$$
在博客中的显示为:
可以看到,该行公式直接占了一行,而且自动居中。这就是块级公式,也是我们经常见到的形式。
公式标号
公式标号只能在块级公式中书写,就是在公式后面增加公式标号。还是刚刚的式子,增加公式标号的方式如下:
$$x^n + y^m = z^t \tag{1}$$
在博客中显示为:
可以看到,公式后面自动增加了标号 (1)
。
公式换行
有时候需要写多个公式,并列起来,可以写多个块级公式,但未免有些麻烦。利用公式的换行操作,就可以让一个块内的公式进行自动换行,LaTex 中的换行符为 \\
。例如:
$$a + b = c\\b + d = e \\ s + c = b$$
这行 LaTex 块级公式的显示如下:
可以看到,虽然只有一行块级公式,但是可以利用 \\
来进行分行处理。有点像编程语言中的转义符 \n
。
不过这样的话,要是需要在每个公式后面增加标号,就有些困难。在 LaTex 中的 \begin{eqnarray*}... \end{eqnarray*}
这里好像并不支持(不知道是不是我的问题),因此如果想要在每个公式后面增加标号,建议单独书写。
一些常用的书写符号
开方:
$$\sqrt[3]{2}$$
幂:
$$x^{3}$$
极限:
$$\lim_{x \to 0}$$
分数:
$$\frac{1}{2}$$
LaTex 中的符号表示有很多很多,这里就不一一介绍了,大家用的时候直接搜索就好。
矩阵书写
LaTex 书写矩阵也是很方便的,使用的是 $$\begin{Xmatrix}...\end{Xmatrix}$$
下面简单介绍一下。
无框矩阵
$$\begin{matrix}
1 & x & x^2 \\
1 & y & y^2 \\
1 & z & z^2 \\
\end{matrix}$$
显示:
注意,这里的 &
符号代表的是对齐。
边框矩阵
在开头将 matrix
替换为 pmatrix
bmatrix
Bmatrix
vmatrix
Vmatrix
,分别代表不同的矩阵形式,可以依据自己的需要进行选择。
$\begin{matrix} 1 & 2 \\ 3 & 4 \\ \end{matrix}$
$\begin{pmatrix} 1 & 2 \\ 3 & 4 \\ \end{pmatrix}$
$\begin{bmatrix} 1 & 2 \\ 3 & 4 \\ \end{bmatrix}$
$\begin{Bmatrix} 1 & 2 \\ 3 & 4 \\ \end{Bmatrix}$
$\begin{vmatrix} 1 & 2 \\ 3 & 4 \\ \end{vmatrix}$
$\begin{Vmatrix} 1 & 2 \\ 3 & 4 \\ \end{Vmatrix}$
带省略符号的矩阵
矩阵中的省略号是利用 \cdots
、 \vdots
和 \ddots
,分别代表了行省略、列省略和对角线省略。看下面的例子:
$$\begin{pmatrix}
1 & a_1 & a_1^2 & \cdots & a_1^n \\
1 & a_2 & a_2^2 & \cdots & a_2^n \\
\vdots & \vdots & \vdots & \ddots & \vdots \\
1 & a_m & a_m^2 & \cdots & a_m^n \\
\end{pmatrix}$$
总结
CSDN 中的 LaTex 不止上面的功能,还有很多,需要使用的时候再去查询就可以。本文仅是对 LaTex 的一个简单介绍,希望能够让大家对其有一个大概的认识。初次接触 LaTex ,如果有什么错误的地方,希望大家给予指正,谢谢。