更新时间:2019.10.02

1. 序言

  当我们首次在文档中输入公式的时候,我们首先想到的是word,毕竟这是我们极为常用的三件套之一。事实上,使用word的墨迹公式(磨叽???)写一个简单的数学公式也还是比较方便的。然而,当我们需要大量输入复杂的数学公式时,用word就十分崩溃了。这一天,我终于想起一度被word所支配的恐怖和手输了一晚上数学公式的屈辱???

  为了不让噩梦重现,下面来总结一下latex这个无敌排版工具的常用用法(分成几篇来讲)。当然,学习latex不但对日后的论文科研有极大的好处,而且jupyter notebook上也支持latex的输入。

2. 命令介绍

  在提及怎么进行公式输入之前,我们先了解一下latex的命令是长什么样子的

  • 无参数命令:主要是以\command的形式输入,例如\hline
  • 有n个参数命令:主要是以\command{parameter 1}{parameter 2}\(\cdots\){parameter n}的形式输入,例如\begin{equation}
  • 有备选参数的命令:主要是以\command[arg] {parameter 1}{parameter 2}\(\cdots\){parameter n}的形式输入,例如\sqrt[n]{x^2 + y^2}

3. 公式输入

  在latex中,有多种公式输入的方式,比如说行内公式与行间公式,又或者直接使用\begin{}\end{}的命令

3.1 无编号公式

  我通常使用的都是无编号公式,毕竟不是在写论文,基本都不需要对公式进行编号,而无编号公式主要分为两种输入方式。

3.1.1 行内公式

  直接使用一组$包着想要输入的内容,来具体看一个例子:

随机变量$X$的分布函数为$F(x)$,求出它的对应的密度函数$f(x)$

显示效果:

随机变量\(X\)的分布函数为\(F(x)\),求出它的对应的密度函数\(f(x)\)

3.1.2 行间公式

  与行内公式稍有不同,行间公式是使用一组$$包着想要输入的内容,来具体看一个例子:

我们熟知的勾股定理是:$$a^2 + b^2 = c^2$$

显示效果:

我们熟知的勾股定理是:$$a^2 + b^2 = c^2$$


3.2 有编号公式

  有时我们在写论文的时候,要对公式进行编号标注,这时可以使用以下几种方式:

3.2.1 手动编号

  比较简便的方法就是在公式里直接加上\tag{},其中{}里放编号。这种方式的好处是,我们能够对编号进行多样的设置

$$a^2 + b^2 = c^2 \tag{1.1}$$
$$a^2 + b^2 = c^2 \tag{no.1}$$

显示效果:

\[a^2 + b^2 = c^2 \tag{1.1}
\]

\[a^2 + b^2 = c^2 \tag{no.1}
\]

3.2.2自动编号

  我们可以使用\begin{equation}\end{equation}进行公式输入,其中要注意的是begin和end是一组命令,要同时使用,并且编号不能够修改。

\begin{equation}
a^2 + b^2 = c^2
\end{equation}

显示效果:

\begin{equation}

a^2 + b^2 = c^2

\end{equation}

  此外,在有的支持latex的编辑器中,也可以使用\label{}来添加公式标签,使用\ref{}来引用编号

\begin{equation}\label{eq2}
a^2 + b^2 = c^2
\end{equation}
这是第(\ref{eq2})个公式

显示效果:

\begin{equation}\label{eq2}

a^2 + b^2 = c^2

\end{equation}

这是第(\ref{eq2})的公式

3.2.3 等式对齐

  当我们需要输入多个有编号的公式,并且要让它们自动对齐时,可以使用参数align

<!--不加align参数-->
\begin{equation}
x + y = 1\\\\
2x + y \neq 1\\\\
3x +4y \leq 2\\\\
4x \geq y
\end{equation}

显示效果:

\begin{equation}

x + y = 1\\

2x + y \neq 1\\

3x +4y \leq 2\\

4x \geq y

\end{equation}

  • tip1:博客园中的\\是代表转义后的\,实际上,在有些编辑工具中,直接\\就能直接换行了(像jupyter notebook),并不需要使用\\\\
  • tip2:在latex中,不等于\(\neq\)使用$\neq$表示,小于等于\(\leq\)使用$\leq$表示,大于等于\(\geq\)使用$\geq$表示
  • ps:可以看到,输入的公式被看成了一个整体,并没有分别对这些公式进行编号。
<!--使用align参数-->
\begin{align}
x + y = 1\\\\
2x + y \neq 1\\\\
3x +4y \leq 2\\\\
4x \geq y
\end{align}

显示效果:

\begin{align}

x + y = 1 \\

2x + y \neq 1 \\

3x +4y \leq 2 \\

4x \geq y

\end{align}

  • ps:可以看到,输入的公式被分别进行编号。

3.2.4 分开输入

  当公式很长,无法在一行中显示;又或者在分步计算时,需要将公式拆分,这时可以使用split参数

\begin{equation}
\begin{split}
(x + y)(x + 4y) & = x^2 + 4xy + xy + 4y^2\\\\
& = x^2 +5xy + 4y^2
\end{split}
\end{equation}

\begin{equation}

\begin{split}

(x + y)(x + 4y) & = x^2 + 4xy + xy + 4y^2\\

& = x^2 +5xy + 4y^2

\end{split}

\end{equation}

3.2.5 分类输入

当一个公式是分段函数时,就需要使用cases参数

\begin{equation}
a_{i1}A_{j1} + a_{i2}A_{j2} + \cdots + a_{in}A_{jn} =
\begin{cases}
\begin{vmatrix}A\end{vmatrix},& i =j\\\\
0, & i \neq j
\end{cases}
\end{equation}

\begin{equation}

a_{i1}A_{j1} + a_{i2}A_{j2} + \cdots + a_{in}A_{jn} =

\begin{cases}

\begin{vmatrix}A\end{vmatrix},& i =j\\

0, & i \neq j

\end{cases}

\end{equation}

  • ps:如果每个情况的公式都要有编号,可以使用numcases参数,但是要在专门的latex套件中调用cases宏包

LaTeX常用篇(一)---公式输入的更多相关文章

  1. LaTeX常用篇(二)---上下标/分式/根式/求和/连乘/极限/积分/希腊字母

    目录 1. 序言 2. 上下标 3. 分式 4. 根式 5. 求和和连乘 6. 极限 7. 积分 8. 常用的希腊字母 9. 补充项 更新时间:2019.10.27 增加补充项中的内容 1. 序言   ...

  2. LaTeX常用篇(三)---矩阵与表格

    目录 1. 序言 2. 矩阵 2.1 复杂写法 2.2 简化写法 2.3 复杂矩阵 3. 表格 4. 对齐 更新时间:2019.10.02 1. 序言   矩阵是一个强大的工具,许多东西都能够用矩阵来 ...

  3. latex 常用小结

    在写论文,甚至有些课程的报告的时候,latex是常用的工具.这篇博文简单的记录了latex常用的一些内容. 1 基本模块 没用过latex的读者,最想问的问题莫过于latex的 “hello worl ...

  4. Latex常用数学符号(转)

    http://blog.sina.com.cn/s/blog_642075770100u0np.html Latex常用数学符号(转) 1.指数和下标可以用^和_后加相应字符来实现.比如: 2.平方根 ...

  5. Shader 学习工具篇 可视化公式工具ZGrapher

    大家好,我是怒风,本篇介绍公式可视化公式工具ZGrapher,尝试通过可视化的方式分析一下Shader中应用的公式,以求帮助初学者快速理解Shader编程中的一些常用公式 本篇的目的两个, 第一,介绍 ...

  6. CTEX - 在线文档 - TeX/LaTeX 常用宏包

    CTEX - 在线文档 - TeX/LaTeX 常用宏包       页面与章节标题式样   浮动对象及标题设计   生成与插入图形   表格与列表   目录与索引   参考文献   数学与化学公式 ...

  7. 【Unity3d游戏开发】Unity3D中常用的物理学公式

    马三最近在一直负责Unity中的物理引擎这一块,众所周知,Unity内置了NVIDIA公司PhysX物理引擎.然而,马三一直觉得只会使用引擎而不去了解原理的程序猿不是一位老司机.所以对一些常用的物理学 ...

  8. C语言中最常用的三种输入输出函数scanf()、printf()、getchar()和putchar()

    本文给大家介绍C语言中最常用的三种输入输出函数scanf().printf().getchar()和putchar(). 一.scanf()函数格式化输入函数scanf()的功能是从键盘上输入数据,该 ...

  9. C# WPF MVVM QQ密码管家项目(8,完结篇:自动输入QQ号、密码)

    原文:C# WPF MVVM QQ密码管家项目(8,完结篇:自动输入QQ号.密码) 目录: 1,界面设计 2,数据模型的建立与数据绑定 3,添加QQ数据 4,修改QQ数据 5,删除QQ数据 6,密码选 ...

随机推荐

  1. 导出wordpress数据库Fatal error: Cannot 'break' 2 levels

    今天我打算备份一下我在Linux下用宝塔面板搭建的phpmyadmin导出wordpress数据库.选择数据库后给我一个Fatal error: Cannot 'break' 2 levels in ...

  2. python爬虫入门新手向实战 - 爬取猫眼电影Top100排行榜

    本次主要爬取Top100电影榜单的电影名.主演和上映时间, 同时保存为excel表个形式, 其他相似榜单也都可以依葫芦画瓢 首先打开要爬取的网址https://maoyan.com/board/4, ...

  3. [技术栈]CRC校验原理及C#代码实现CRC16、CRC32计算FCS校验码

    1.CRC.FCS是什么 CRC,全称Cyclic Redundancy Check,中文名称为循环冗余校验,是一种根据网络数据包或计算机文件等数据产生简短固定位数校验码的一种信道编码技术,主要用来检 ...

  4. CAS详细登录流程(转)

    转:https://www.cnblogs.com/lihuidu/p/6495247.html 4.CAS的详细登录流程 上图是3个登录场景,分别为:第一次访问www.qiandu.com.第二次访 ...

  5. cmd控制台 wrapper | OpenSCManager failed - 拒绝访问。 (0x5)解决

    在windows上安装mycat执行命令时, D:\develop\Mycat\bin>mycat.bat install 返回wrapper | OpenSCManager failed - ...

  6. markdown常用语法使用笔记

    markdown是当下比较流行的一种编辑标记语言,很多系统都支持markdown语法来编辑文件内容,像gitbook之类的,一下是一些学习笔记. 1.开头用#的数量表示1-6阶的标题,结尾可以以任意数 ...

  7. C语言I博客作业

    |这个作业属于哪个课程 | C语言程序设计I | | ---- | ---- | |对这个作业要求在哪里 | https://edu.cnblogs.com/campus/zswxy/SE2019-2 ...

  8. 01、JDBC连接

    ① 下载JDBC-MySQL数据库驱动 链接:https://pan.baidu.com/s/1KtSZZ5hXlxu2QrmsXg3lkA 提取码:1pbl ② 加载JDBC-MySQL数据库驱动 ...

  9. Rust到底值不值得学--Rust对比、特色和理念

    前言 其实我一直弄不明白一点,那就是计算机技术的发展,是让这个世界变得简单了,还是变得更复杂了. 当然这只是一个玩笑,可别把这个问题当真. 然而对于IT从业者来说,这可不是一个玩笑.几乎每一次的技术发 ...

  10. Redis 介绍学习

    1.Redis 简介 Redis 是一个支持数据结构更多的键值对数据库.它的值不仅可以是字符串等基本数据 类型,也可以是类对象,更可以是 Set.List.计数器等高级的数据结构. Memcached ...