LaTeX常用篇(一)---公式输入
更新时间: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}$$
显示效果:
\]
\]
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常用篇(一)---公式输入的更多相关文章
- LaTeX常用篇(二)---上下标/分式/根式/求和/连乘/极限/积分/希腊字母
目录 1. 序言 2. 上下标 3. 分式 4. 根式 5. 求和和连乘 6. 极限 7. 积分 8. 常用的希腊字母 9. 补充项 更新时间:2019.10.27 增加补充项中的内容 1. 序言 ...
- LaTeX常用篇(三)---矩阵与表格
目录 1. 序言 2. 矩阵 2.1 复杂写法 2.2 简化写法 2.3 复杂矩阵 3. 表格 4. 对齐 更新时间:2019.10.02 1. 序言 矩阵是一个强大的工具,许多东西都能够用矩阵来 ...
- latex 常用小结
在写论文,甚至有些课程的报告的时候,latex是常用的工具.这篇博文简单的记录了latex常用的一些内容. 1 基本模块 没用过latex的读者,最想问的问题莫过于latex的 “hello worl ...
- Latex常用数学符号(转)
http://blog.sina.com.cn/s/blog_642075770100u0np.html Latex常用数学符号(转) 1.指数和下标可以用^和_后加相应字符来实现.比如: 2.平方根 ...
- Shader 学习工具篇 可视化公式工具ZGrapher
大家好,我是怒风,本篇介绍公式可视化公式工具ZGrapher,尝试通过可视化的方式分析一下Shader中应用的公式,以求帮助初学者快速理解Shader编程中的一些常用公式 本篇的目的两个, 第一,介绍 ...
- CTEX - 在线文档 - TeX/LaTeX 常用宏包
CTEX - 在线文档 - TeX/LaTeX 常用宏包 页面与章节标题式样 浮动对象及标题设计 生成与插入图形 表格与列表 目录与索引 参考文献 数学与化学公式 ...
- 【Unity3d游戏开发】Unity3D中常用的物理学公式
马三最近在一直负责Unity中的物理引擎这一块,众所周知,Unity内置了NVIDIA公司PhysX物理引擎.然而,马三一直觉得只会使用引擎而不去了解原理的程序猿不是一位老司机.所以对一些常用的物理学 ...
- C语言中最常用的三种输入输出函数scanf()、printf()、getchar()和putchar()
本文给大家介绍C语言中最常用的三种输入输出函数scanf().printf().getchar()和putchar(). 一.scanf()函数格式化输入函数scanf()的功能是从键盘上输入数据,该 ...
- C# WPF MVVM QQ密码管家项目(8,完结篇:自动输入QQ号、密码)
原文:C# WPF MVVM QQ密码管家项目(8,完结篇:自动输入QQ号.密码) 目录: 1,界面设计 2,数据模型的建立与数据绑定 3,添加QQ数据 4,修改QQ数据 5,删除QQ数据 6,密码选 ...
随机推荐
- 单元测试框架Uinttest一文详解
一谈及unittest,大家都知道,unittest是Python中自带的单元测试框架,它里面封装好了一些校验返回的结果方法和一些用例执行前的初始化操作.unittest单元测试框架不仅可以适用于单元 ...
- What skills you need to become a full stack java developer?
For a full stack Java developer you should start with learning backend and front-end technologies Fr ...
- 日志 logging 代码格式
日志logging 格式代码 import logging looger = logging.getLogger() #创建一个空架子 创建一个文件句柄,用来记录日志(文件流) fh = loggin ...
- Spring 梳理 - 视图解析器 VS 视图(View,ViewResolver)
View View接口表示一个响应给用户的视图,例如jsp文件,pdf文件,html文件等 该接口只有两个方法定义,分别表明该视图的ContentType和如何被渲染 Spring中提供了丰富的视图支 ...
- Linux Shell 基础知识(二)
1.本文知识结构 2.文件的查询与检索 2.1. cd 目录切换 找到文件/目录位置:cd 切换到上一个工作目录: cd - 切换到home目录: cd or cd ~ 显示当前路径: pwd 更改当 ...
- 揭秘C# SQLite的从安装到使用
SQLite,是一款轻型的数据库,是遵守ACID的关联式数据库管理系统,它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了 ...
- [docker swarm] 从单容器走向负载均衡部署
背景 之前写过<<docker-compose真香>> 和<docker-compose.docker stack前世今生>两篇博客, 回顾一下思路: ① dock ...
- Java 并发编程(三):如何保证共享变量的可见性?
上一篇,我们谈了谈如何通过同步来保证共享变量的原子性(一个操作或者多个操作要么全部执行并且执行的过程不会被任何因素打断,要么就都不执行),本篇我们来谈一谈如何保证共享变量的可见性(多个线程访问同一个变 ...
- 超链接target属性的取值和作用?
<a>标签的target属性规定在何处打开连接文档 属性值 _black:点击一次打开一个新窗口 _new:始终在同一个新窗口中打开 _self:默认,在当前窗口打开 _parent:在父 ...
- SQL SERVER数据库日常使用总结
以下内容为平时工作自己个人总结,仅供参考,欢迎交流 SELECT A.CBM,A.CMC,SUM(B.MJE)MJE FROM YXHIS..TBZDZTHZ A,YXHIS..TBZDZTMX B ...