更新时间: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 行内公式

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

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

显示效果:

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

3.1.2 行间公式

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

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

显示效果:

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


3.2 有编号公式

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

3.2.1 手动编号

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

  1. $$a^2 + b^2 = c^2 \tag{1.1}$$
  2. $$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是一组命令,要同时使用,并且编号不能够修改。

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

显示效果:

\begin{equation}

a^2 + b^2 = c^2

\end{equation}

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

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

显示效果:

\begin{equation}\label{eq2}

a^2 + b^2 = c^2

\end{equation}

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

3.2.3 等式对齐

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

  1. <!--不加align参数-->
  2. \begin{equation}
  3. x + y = 1\\\\
  4. 2x + y \neq 1\\\\
  5. 3x +4y \leq 2\\\\
  6. 4x \geq y
  7. \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:可以看到,输入的公式被看成了一个整体,并没有分别对这些公式进行编号。
  1. <!--使用align参数-->
  2. \begin{align}
  3. x + y = 1\\\\
  4. 2x + y \neq 1\\\\
  5. 3x +4y \leq 2\\\\
  6. 4x \geq y
  7. \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参数

  1. \begin{equation}
  2. \begin{split}
  3. (x + y)(x + 4y) & = x^2 + 4xy + xy + 4y^2\\\\
  4. & = x^2 +5xy + 4y^2
  5. \end{split}
  6. \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参数

  1. \begin{equation}
  2. a_{i1}A_{j1} + a_{i2}A_{j2} + \cdots + a_{in}A_{jn} =
  3. \begin{cases}
  4. \begin{vmatrix}A\end{vmatrix},& i =j\\\\
  5. 0, & i \neq j
  6. \end{cases}
  7. \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. JSP常规内容

    1.forword和redirect的区别? forword是服务器请求资源,服务器直接读取URL,把目标地址URL响应读取出来,然后再把这些内容发送给浏览器.(特点是url和request sess ...

  2. 第八届蓝桥杯java b组第六题

    标题:最大公共子串 最大公共子串长度问题就是:求两个串的所有子串中能够匹配上的最大长度是多少. 比如:"abcdkkk" 和 "baabcdadabc",可以找 ...

  3. Linux中安装传输的命令行工具

    创建lrzsz目录: mkdir /usr/local/lrzsz 进入lrzsz目录: cd /usr/local/lrzsz 下载lrzsz压缩包: wget http://www.ohse.de ...

  4. 阿里云服务器CentOS6.9安装jenkins

    jenkins安装 jenkins安装方式好几种,此处介绍基于tomcat安装,比较方便. 首先,通过官网下载jenkins.war文件,下载地址:https://jenkins.io/ 下载完成,将 ...

  5. Redis-->Ubutn上的安装教程

    Redis 安装 当前redis最新稳定版本是4.0.9 以下步骤可以跳过 最新稳定版本下载链接:http://download.redis.io/releases/redis-4.0.9.tar.g ...

  6. linux脚本入门之终端显示输出

    主要基本命令为 echo 与 printf. 关于echo: 其语法结构为:echo -选项参数 字符串: 例如:echo hello,world   echo 'hello,world'  echo ...

  7. 快学Scala 第十三课 (类型层级,对象相等性)

    Scala 类型层级: 对象相等性: 和Java一样要重写equals方法和hashcode方法 class Student(val id: Int, val name: String) { over ...

  8. TCP三次握手和四次握手全过程 为什么要三次握手而不是二次握手?

    三次握手 第一次握手: 客户端发送syn包(syn=x)到服务器,并进入SYN_SEND状态,等待服务器确认: 第二次握手: 服务器收到syn包,必须确认客户的SYN(ack=x+1),同时自己也发送 ...

  9. A-04 坐标轴下降法

    目录 坐标轴下降法 一.坐标轴下降法流程 二.坐标轴下降法和梯度下降法的异同 更新.更全的<机器学习>的更新网站,更有python.go.数据结构与算法.爬虫.人工智能教学等着你:http ...

  10. 基于mosquitto的MQTT客户端实现C语言

    在对MQTT的学习过程中 一下的内容对我提供了帮助 https://www.runoob.com/w3cnote/mqtt-intro.html 对MQTT的入门级介绍 很基础讲解了什么是MQTT h ...