NMT Data Mining & Big Data

Latex公式语法详解

2019-10-06
NMt

本文是有关于利用Latex输入公式的详细语法记录。

@@@@

目录

在建立博客之初,在几个月之前我有介绍过Markdown语法(没看过并且有需求的小伙伴可以看看哦~),并且当时在文章结尾说后面要出一篇Latex语法的博客,谁曾想竟然过了这么久。最近写的博客里面的公式好多,并且写了好几篇论文,论文里面也是要打公式的嘛,所以学的Latex语法越来越多,现在估摸着能写一篇博客了。好了废话不多说,现在就开始吧!!!

注:由于所有的Latex公式语法都会被转化为公式,所以我用代码块来放语法,这样就不会被转为公式了。(行内代码块镇不住它,直接上代码块好了)

常用语法

在学习之初可以先学这些语法,等练熟了学后面难的也会容易很多。并且掌握这些语法简单的公式都能搞定!!

1.插入公式

  • 行内公式:
    $custom Mathematical Formula$
    
  • 独立公式:
    $$custom Mathematical Formula$$
    
  • 自动编号:
    $$
    \begin{equation}
    custom Mathematical Formula
    \label(eq: the name of formula)  [Optional]
    \end{equation}
    $$
    
  • 手动编号:
    $$
    Custom Mathematical Formula
    \tag{the number}
    $$
    

2.输入上下标

符号 说明
^ 上标
_ 下标

示例:

$$A_0^2$$

效果:

\[A_0^2\]

如若需要左右两边加上上下标,则可用\sideset

示例:

$$\sideset{^1_2}{^3_4}\bigotimes$$

效果:

\[\sideset{^1_2}{^3_4}\bigotimes\]

3.常见括号

输入 显示
\langle formula \rangle $\langle{formula}\rangle$
\lceil formula \rceil $\lceil{formula}\rceil$
\lfloor formula \rfloor $\lfloor{formula}\rfloor$
\lbrace formula \rbrace $\lbrace{formula}\rbrace$
\overbrace{a+b+\cdots+z} $\overbrace{a+b+\cdots+z}$
\overbrace{ a+b+\cdots+z }^{26} $\overbrace{ a+b+\cdots+z }^{26}$
\underbrace{a+b+\cdots+z} $\underbrace{a+b+\cdots+z}$
\underbrace{ a+b+\cdots+z }_{26} $\underbrace{ a+b+\cdots+z }_{26}$

4.输入省略号

输入 显示
\dots $\dots$
\cdots $\cdots$
\ldots $\ldots$

注:\cdots是中线对齐的省略号,\ldots是底线对齐的省略号,\dots我也不知道是什么省略号,好像看起来没什么太大差别,但是确实有差别,视情况用吧。

5.输入分数

  • 常用:
$$
\frac{molecule}{denominators}
$$
  • 便捷:
$$
\frac ab
$$

注:适合简单分数,复杂的最好不要。

  • 复杂:
$$
{molecule}\over{denominator}
$$

6.输入积分

积分符号:\int

其中上限、下限相当于上下标,因此格式为:

\int_下限^上限{被积函数}dx

例子:

$$
\int_0^1 {x^2} \,{\rm d}x
$$

效果:

\[\int_0^1 {x^2} \,{\rm d}x\]

其中,\rm让d可以不变成斜体。

7.累加、累乘运算符号

累加: \sum
累乘: \prod
并集: \bigcup 交集: \bigcap

其中,这些符号上面的表达式以及下面的表达式都当作上下标来处理。

示例:

$$
\sum_{i=1}^n \frac{1}{i^2}
$$

$$
\prod_{i=1}^n \frac{1}{i^2}
$$

$$
\bigcup_{i=1}^{2} R
$$

效果:

\[\sum_{i=1}^n \frac{1}{i^2}\] \[\prod_{i=1}^n \frac{1}{i^2}\] \[\bigcup_{i=1}^{2} R\]

8.输入根号

格式: \sqrt [根指数] {被开方表达式}

示例:

$$
\sqrt[n]{a}
$$

效果:

\[\sqrt[n]{a}\]

9.函数名

函数名通常用罗马字体正体排版,而不是像变量名一样用意大利体排版,因此Latex提供下述命令来排版最终的一些函数名。


简单的基本上都介绍完了。接下来就相当于做一个查询字典类的记录,尽量囊括所有语法,使用时可以直接查。

希腊字母

语法 小写字母效果 大写字母效果
\alpha $\alpha$ $A$
\beta $\beta$ $B$
\gamma $\gamma$ $\Gamma$
\delta $\delta$ $\Delta$
\epsilon $\epsilon$ $E$
\varepsilon $\varepsilon$ -
\zeta $\zeta$ $Z$
\eta $\eta$ $H$
\theta $\theta$ $\Theta$
\vartheta $\vartheta$ -
\iota $\iota$ $I$
\kappa $\kappa$ $K$
\lambda $\lambda$ $\Lambda$
\mu $\mu$ $M$
\nu $\nu$ $N$
\xi $\xi$ $\Xi$
\omicron $\omicron$ $O$
\pi $\pi$ $\Pi$
\varpi $\varpi$ -
\rho $\rho$ $R$
\varrho $\varrho$ -
\sigma $\sigma$ $\Sigma$
\varsigma $\varsigma$ -
\tau $\tau$ $T$
\upsilon $\upsilon$ $\Upsilon$
\phi $\phi$ $\Phi$
\varphi $\varphi$ -
\chi $\chi$ $X$
\psi $\psi$ $\Psi$
\omega $\omega$ $\Omega$

注:一般来说,希腊字母的小写语法的第一个字母大写就可以变成大写希腊字母(在Word公式编辑器中所有都适用),在Latex语法中大写就是英文大写字母的直接用英文字母代替,其他无法替代的再将首字母大写就可变成大写希腊字母了。

字母变体

语法 效果
\mathrm{ABC} $\mathrm{ABC}$
\mathit{ABC} $\mathit{ABC}$
\mathcal{ABC} $\mathcal{ABC}$
\mathfrak{ABC} $\mathfrak{ABC}$
\mathbb{ABC} $\mathbb{ABC}$
\mathscr{ABC} $\mathscr{ABC}$

我从另一篇博客里面看到有介绍这个是改变了字体,然后给出了改变字体的语法:

语法 字体 样例 效果
\rm 罗马体 \rm 哈喽, Latex! 123 $\rm 哈喽, Latex! 123$
\bf 黑体 \bf 哈喽, Latex! 123 $\bf 哈喽, Latex! 123$
\Bbb 黑板粗体 \ 哈喽, Latex! 123 $\Bbb 哈喽, Latex! 123$
\mit 数学斜体 \mit 哈喽, Latex! 123 $\mit 哈喽, Latex! 123$
\scr 小体大写字母 \scr 哈喽, Latex! 123 $\scr 哈喽, Latex! 123$
\it 意大利体 \it 哈喽, Latex! 123 $\it 哈喽, Latex! 123$
\cal 花体 \cal 哈喽, Latex! 123 $\cal 哈喽, Latex! 123$
\sf 等线体 \sf 哈喽, Latex! 123 $\sf 哈喽, Latex! 123$
\tt 打字机体 \tt 哈喽, Latex! 123 $\tt 哈喽, Latex! 123$
\frak Fraktur(德国字体) \frak 哈喽, Latex! 123 $\frak 哈喽, Latex! 123$

看起来感觉中文没有太大差别,差别比较大的是英文字母,挺好玩的,以后写博客可以变换字体了!!ヽ(*≧ω≦)ノ

改变颜色

代码 效果
\color{black}{Haha,\ Latex!} $\color{black}{Haha,\ Latex!}$
\color{gray}{Haha,\ Latex!} $\color{gray}{Haha,\ Latex!}$
\color{silver}{Haha,\ Latex!} $\color{silver}{Haha,\ Latex!}$
\color{white}{Haha,\ Latex!} $\color{white}{Haha,\ Latex!}$
\color{maroon}{Haha,\ Latex!} $\color{maroon}{Haha,\ Latex!}$
\color{red}{Haha,\ Latex!} $\color{red}{Haha,\ Latex!}$
\color{yellow}{Haha,\ Latex!} $\color{yellow}{Haha,\ Latex!}$
\color{lime}{Haha,\ Latex!} $\color{lime}{Haha,\ Latex!}$
\color{olive}{Haha,\ Latex!} $\color{olive}{Haha,\ Latex!}$
\color{green}{Haha,\ Latex!} $\color{green}{Haha,\ Latex!}$
\color{teal}{Haha,\ Latex!} $\color{teal}{Haha,\ Latex!}$
\color{aqua}{Haha,\ Latex!} $\color{aqua}{Haha,\ Latex!}$
\color{blue}{Haha,\ Latex!} $\color{blue}{Haha,\ Latex!}$
\color{navy}{Haha,\ Latex!} $\color{navy}{Haha,\ Latex!}$
\color{purple}{Haha,\ Latex!} $\color{purple}{Haha,\ Latex!}$
\color{fuchsia}{Haha,\ Latex!} $\color{fuchsia}{Haha,\ Latex!}$

看着这些五彩斑斓的字就觉得很开心!!ヽ(‘ ∇‘ )ノ

总结Latex的反人类语法

以下大部分都是我踩过的坑,都记录下来了!இдஇ

1.一个公式里输入多行

命令:可用\\命令进行分行

示例:

\mathbf{X} = 
\left( \begin{array}{ccc}
x_{11} & x_{12} & \ldots \\
x_{21} & x_{22} & \ldots \\
\vdots & \vdots & \dddots
\end{array} \right)

效果:

\[\mathbf{X} = \left( \begin{array}{ccc} x_{11} & x_{12} & \ldots \\ x_{21} & x_{22} & \ldots \\ \vdots & \vdots & \ddots \end{array} \right)\]

2.array环境也可以使用“.”作为隐藏右分隔符来排版只有一个大分隔符的表达式

示例:

$$
y = \left\{\begin{array}{ll}
  a & \textrm{if $d>c$}\\
  b+x & \textrm{in the morning}\\
  l & \textrm{all day long}
  \end{array} \right.
$$

效果:

\[y = \left\{\begin{array}{ll} a & \textrm{if $d>c$}\\ b+x & \textrm{in the morning}\\ l & \textrm{all day long} \end{array} \right.\]

3.在array中画线

\left(\begin{array}{c|c}
1 & 2 \\
\hline
3 & 4
\end{array}\right)
\[\left(\begin{array}{c|c} 1 & 2 \\ \hline 3 & 4 \end{array}\right)\]

4.等号对齐

对于分布于几行的公式或者方程组(equation system),可以使用 eqnarray 和 eqnarray* 环境来代替 equation 。在 eqnarray 中,每一行都会有一个方程编号。 eqnarray* 不对方程进行编号。

eqnarray 和 eqnarray* 环境类似于{rcl}形式的三列表格。中间的一列可以用作等号或不等号,或者其他看起来适合的符号。使用 \ 命令分行。

示例:

\begin{eqnarray}
f(x) & = & \cos x    \\
f'(x) & = & -\sin x  \\
\int_{0}^{x} f(y)dy & = & \sin x
\end{eqnarray}
\[\begin{eqnarray} f(x) & = & \cos x \\ f'(x) & = & -\sin x \\ \int_{0}^{x} f(y)dy & = & \sin x \end{eqnarray}\]

注:等号两边的空格都很大,可以通过设定\setlenth\arratcolsep{2pt}来减小空格。

我在自己电脑上尝试失败了,可能缺少了宏包,所以这里就先跳过吧。

\nonumber命令将阻止Latex为此方程生成一个编号。

5.排版模函数(modulo function)

  • 命令一:\bmod用于二元运算符“$a \bmod b$”;
  • 命令二:\pmod用于表达式,例如”$x \equiv a \pmod b$”

6.输入组合数

命令:\tbinom

示例:

$$
\tbinom{n}{m}
$$

效果:

\[\tbinom{n}{m}\]

7.排版二项系数或类似的结构

命令: {… \choose …} or {… \atop …}

第二个命令与第一个命令的输出相同,只是没有括号。

示例:

$$
{n \choose k}
$$

效果:

\[{n \choose k}\]

示例:

$$
{x \atop y+2}
$$

效果:

\[{x \atop y+2}\]

8.公式中的空格

Latex中的空格自动被忽略,可以通过其他的方式来产生空格。

\, 对应于$\frac{3}{18}$quad();
: 对应于$\frac{4}{18}$quad();
\; 对应于$\frac{5}{18}$quad();
\空格 对应于中等大小空格;
\quad( ) 和\qquad( ) 对应于打空格;
\! 生成负空格 $-\frac{3}{18}$quad()。


如果后续还遇到其他的坑我再在这里继续记录!希望不要遇到!(つд⊂)

数学符号表

这个地方再继续手敲就太不人道了,所以我选择截图的方式……丑点,但是和手敲那么多还要调格式比起来,我能接受……

数学模式重音符

二元关系符

二元运算符

大尺寸运算符

箭头

定界符

大尺寸定界符

其他符号

非数学符号

参考文献:

https://www.cnblogs.com/q735613050/p/7253073.html
https://www.cnblogs.com/blfshiye/p/5168840.html
https://q.cnblogs.com/q/112315/
http://www.mohu.org/info/lshort-cn.pdf


即将敲完这篇博客的时候,我手竟然抽筋儿了,人生第一次手抽筋儿竟然是敲字敲的!!

转载请注明:南梦婷的博客 » 点击阅读原文


Comments

Content