LaTeX数学公式编辑(1)——行内公式&行间公式「建议收藏」

LaTeX数学公式编辑(1)——行内公式&行间公式「建议收藏」1.行内公式2.行间公式2.1单行编号2.2单行不编号2.3多行编号2.4多行不编号3.说明4.参考文献对数学公式的排版,可以说是LaTeX中最精彩的部分.首先说需要注意的问题.数学公式中有时候会出现文字(中文或英文),需要将文字用命令\text{…}包起来.如果将文字不加处理,直接写到公式里面会出现如下问题:如果…

大家好,又见面了,我是你们的朋友全栈君。

特别说明:近期发现,CSDN博客中的代码在没有登录的情况下无法复制,这种行为已经完全背离了分享的初衷,为分享增加了不必要的麻烦,所以本人决定将本文内容逐步转移到其他平台。
本文新地址:https://www.cnblogs.com/beta2187/p/15476061.html
https://www.yuque.com/beta2187/elwnkv/qnn9er

对数学公式的排版, 可以说是 LaTeX 中最精彩的部分.

首先说需要注意的问题. 数学公式中有时候会出现文字(中文或英文),
需要将文字用命令 \text{...} 包起来. 如果将文字不加处理, 直接写到公式里面会出现如下问题:

  • 如果是中文, 则不显示, 例如代码 $根号9=3$ 编译之后显示为 9 = 3 9=3 9=3, 而代码$\text{根号}9=3$ 编译之后显示为 根号 9 = 3 \text{根号}9=3 根号9=3.
  • 如果是英文, 虽然显示, 但显示为斜体 (行文中出现的英文一般为正体).

现在来看怎么排版数学公式. 数学公式多种多样, 但总的说起来, 可以分为行内公式和行间公式.

1. 行内公式

行内公式统一使用$...$来表达. $前后一般要有空格, 除非公式后面有标点符号.

2. 行间公式

对于行间公式, 要么编号, 要么不编号; 要么单行, 要么多行. 通过组合之后可知行间公式有四种: 单行编号、单行不编号、多行编号和多行不编号. 下面对每种公式的写法逐一介绍.

2.1 单行编号

单行编号的公式示例:

\begin{equation}\label{...}
\int_0^1f(t)dt = \iint_Dg(x,y)dxdy.
\end{equation}

运行结果为:
\begin{equation}
\int_0^1f(t)dt = \iint_Dg(x,y)dxdy.
\end{equation}
其中\label{...}的花括号中的内容可以使字母、数字、点号和减号的组合(例如\label{sec-2.3}), 用来对公式进行引用, 引用的命令为\eqref{...}.

2.2 单行不编号

不编号公式应避免使用 $$...$$, 因为它可能会产生不良间距. 可以用

\[
\int_0^1f(t)dt = \iint_Dg(x,y)dxdy.
\]

简单书写, 也可用

\begin{equation*}
\int_0^1f(t)dt = \iint_Dg(x,y)dxdy.
\end{equation*}

来书写, 效果相同, 运行结果为
\begin{equation*}
\int_0^1f(t)dt = \iint_Dg(x,y)dxdy.
\end{equation*}

2.3 多行编号

多行编号的公式示例1 (注意对齐符号&的位置):

\begin{equation}\label{...}
\begin{split}
\frac{1}{2} (\sin(x+y) + \sin(x-y)) =& \frac{1}{2}(\sin x \cos y + \cos x \sin y)\\
& + \frac{1}{2} (\sin x \cos y - \cos x \sin y)\\
=& \sin x \cos y.
\end{split}
\end{equation}

运行结果为:
\begin{equation}
\begin{split}
\frac{1}{2} (\sin(x+y) + \sin(x-y)) =& \frac{1}{2}(\sin x \cos y + \cos x \sin y)\
& + \frac{1}{2} (\sin x \cos y – \cos x \sin y)\
=& \sin x \cos y.
\end{split}
\end{equation}
多行编号的公式示例2:

\begin{equation}\label{...}
\begin{dcases}
\frac{dS}{dt} = \Lambda - \beta SI - \mu S -\mu_1 mZS + \delta_0R, \\
\frac{dI}{dt} = \beta SI - (\mu+\delta+\gamma)I.
\end{dcases}
\end{equation}

运行结果为:
\begin{equation}
\begin{cases}
\frac{dS}{dt} = \Lambda – \beta SI – \mu S -\mu_1 mZS + \delta_0R, \
\frac{dI}{dt} = \beta SI – (\mu+\delta+\gamma)I.
\end{cases}
\end{equation}
多行编号的公式示例3:

\begin{equation}\label{...}
D(x) =
\begin{cases}
1, & \text{if } x \in \mathbb{Q};\\
0, & \text{if } x \in \mathbb{R}\setminus\mathbb{Q}.
\end{cases}
\end{equation}

运行结果为:
\begin{equation}
D(x) =
\begin{cases}
1, & \text{if } x \in \mathbb{Q};\
0, & \text{if } x \in \mathbb{R}\setminus\mathbb{Q}.
\end{cases}
\end{equation}

2.4 多行不编号

可以在第2.3节命令的基础上将各个命令外层的\begin{equation}...\end{equation} 改为\begin{equation*}...\end{equation*} 使得公式不编号. 也可以用

\begin{align*}
\frac{1}{2} (\sin(x+y) + \sin(x-y)) =& \frac{1}{2}(\sin x \cos y + \cos x \sin y)\\
& + \frac{1}{2} (\sin x \cos y - \cos x \sin y)\\
=& \sin x \cos y.
\end{align*}

来排版此类公式. 运行结果为:
\begin{align*}
\frac{1}{2} (\sin(x+y) + \sin(x-y)) =& \frac{1}{2}(\sin x \cos y + \cos x \sin y)\
& + \frac{1}{2} (\sin x \cos y – \cos x \sin y)\
=& \sin x \cos y.
\end{align*}

3. 说明

本文中只介绍了数学公式的基本写作框架, 具体细节请参看文献[1,2]. 文中应该显示为编号的公式, 在博客中没有显示编号, 属于网页显示问题, 在LaTeX编译器中编译相应代码会显示编号.
文中如有不妥之处,肯请指教.

4. 参考文献

[1] 刘海洋. LaTeX 入门 [M]. 北京: 电子工业出版社, 2013.
[2] 胡伟. LaTeX 2e完全学习手册(第二版). 北京: 清华大学出版社, 2013.

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/150067.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • c语言编程void什么意思,c语言中void啥意思?

    c语言中,void的意思是“无类型”,相应的“void*”为无类型指针,常用在程序编写中对定义函数的参数类型、返回值、函数中指针类型进行声明,其作用是对函数返回和参数的进行限定。c语言中,void的意思是“无类型”,相应的“void*”为无类型指针,常用在程序编写中对定义函数的参数类型、返回值、函数中指针类型进行声明,其作用是对函数返回和参数的进行限定。voidvoid最常见的用法,就是在函数…

    2022年4月3日
    71
  • tomcat启动日志乱码怎么解决_tomcat出现乱码

    tomcat启动日志乱码怎么解决_tomcat出现乱码打开cd到tomcat/conf/目录下修改logging.properties找到java.util.logging.ConsoleHandler.encoding=utf-8这行更改为java.util.logging.ConsoleHandler.encoding=GBK如果对你有帮助还望资金上支持…

    2022年9月26日
    2
  • mac os+selenium2+chrome驱动+python3

    mac os+selenium2+chrome驱动+python3macos10.11.5+python3安装selenium过程详解(附截图),难点在chrome驱动安装,以及第一个selenium自动化脚本

    2022年6月29日
    30
  • 使用Depix进行马赛克的消除测试

    使用Depix进行马赛克的消除测试0.前言最近看到各种公众号都在推一个叫Depix的Github项目,用途是能够消除文字马赛克,抱着试试看的态度测试了一下这个项目。太长不看版:公众号对该项目的效果有一定程度的夸大,但是还是要注意使用各种方法对个人隐私进行保护项目地址:https://github.com/beurtschipper/Depix项目自带的Example如下:这个项目的文档上说,只需要马赛克后的图像,马赛克图像上包含的字符的DeBruijn序列,就可以生成去马赛克的图像。(测试效果如上图所示)接下来就测试一

    2022年6月24日
    80
  • java.exe 0xc000012d_应用程序无法正常启动 0xc000012d

    java.exe 0xc000012d_应用程序无法正常启动 0xc000012d应用程序无法正常启动0xc000012d,主要原因在于你的电脑缺少相对应的运行环境,可通过下载.netframework来解决。方法一:具体步骤如下1、打开百度输入”.netframework”,输入后单击搜索。2、接下来,我们找到下载地址并将程序下载到我们的计算机上。3、接下来,我们找到新下载的。在桌面上单击“运行”。4、安装之后,我们返回到刚刚打开错误的程序位置。最后,我们可以点击再次打开…

    2022年9月29日
    4
  • pycharmdjango项目实战_pycharm django环境搭建

    pycharmdjango项目实战_pycharm django环境搭建创建项目我们创建django项目有两种方式,命令行方式和使用pycharm工具创建,本文就介绍常用的pycharm工具创建首先点击django,输入项目的名称,选择创建好的虚拟环境,最后点击cre

    2022年7月31日
    7

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号