- 发表于
LaTeX公式与三线表教程:从入门到精通的排版指南
面向“能编译、能复用”的刚需,这份 LaTeX教程 将提供 align 多行公式、矩阵、定理环境与 booktabs 三线表的最小可复用代码集,附 mwe 与 latexmk 一键命令,适合快捷上手与稳定交付。
为什么选择 LaTeX?我的经验之谈
我曾经用 Word 排版数学公式和复杂表格排到崩溃,直到遇到了 LaTeX。它彻底改变了我的学术写作体验。在以下场景,LaTeX 具有明显优势:
- 无与伦比的数学公式:无论是复杂的积分、矩阵,还是多行对齐的方程组,都能呈现印刷品级别的精美。如果你需要撰写包含大量数学内容的文档,LaTeX 是不二之选。
- 极致的结构化管理:章节、图表、公式自动编号,目录、参考文献一键生成。对于长篇文档,LaTeX 的结构化能力能让你专注于内容,而无需担心格式。
- 严格的学术规范:轻松加载全球顶级期刊(如 APA, IEEE, Nature)的官方模板,让你的稿件从格式上就无可挑剔。
一、文档的解剖学:第一个 LaTeX 程序
让我们从一个最基础的“Hello, World”文档开始。下面的代码包含了构成一篇完整文章的所有核心元素。
% --- 导言区 (Preamble): 定义文档的基础规则 ---
\documentclass[12pt, a4paper]{article} % 定义文档类型为'article', 12号字, A4纸张
% 引入功能宏包 (Packages)
\usepackage{ctex} % 必不可少!为文档提供完整的中文支持
\usepackage{graphicx} % 让我们能够插入图片
\usepackage{amsmath} % AMS数学宏包,提供更强大的数学公式环境
\usepackage{amsthm} % 用于定义定理、证明等环境
\usepackage{booktabs} % 用于绘制专业的“三线表”
\usepackage{listings} % 用于插入带高亮的代码块
% --- 文档元数据 (Metadata) ---
\title{我的第一个 \LaTeX{} 文档} % 定义标题
\author{Jc} % 定义作者
\date{\today} % 定义日期, \today会自动生成当天日期
% --- 正文区 (Document Body): 文档的实际内容 ---
\begin{document}
\maketitle % 命令:在这里生成并显示标题、作者、日期
\tableofcontents % 命令:在这里生成并显示目录
\section{引言 (Introduction)} % 创建一个一级标题
这里是引言部分。注意,在 \LaTeX{} 中,你无需关心换行和缩进,它会为你自动处理。
一个空行代表一个新段落的开始。
\subsection{背景介绍} % 创建一个二级标题
我们可以在这里插入一张图片作为示例。
\begin{figure}[htbp] % 'figure'环境, [htbp]是图片位置建议: here, top, bottom, page
\centering % 图片居中
\includegraphics[width=0.5\textwidth]{demo.png} % 插入图片, 宽度为文本宽度的50%
\caption{这是一张示例图片} % 图片的标题, 会自动编号
\label{fig:demo} % 为图片设置一个标签, 用于后文引用
\end{figure}
在图 \ref{fig:demo} 中,我们展示了一个示例。看,交叉引用就是这么简单!
\end{document}
二、数学公式(核心模块)
这是 LaTeX 最令人着迷的部分。掌握 LaTeX公式 的排版是学术写作的必备技能。
1. 多行公式的艺术:对齐与编号
% 使用 align 环境,它会按照 & 符号的位置进行对齐
\begin{align}
f(x) &= (a+b)^2 \notag \ % '&=' 表示在此对齐, '\notag' 表示本行不生成编号
&= a^2 + 2ab + b^2 \label{eq:expand} % 为此公式行添加标签
\end{align}
根据公式 \eqref{eq:expand},我们可以得到... % \eqref 会为公式编号加上括号
2. 矩阵与方程组:结构化数学之美
% \[ ... \] 是书写独立数学公式的快捷方式
\[
% \mathbf{} 用于将字母加粗,常用于表示向量或矩阵
\mathbf{A} =
\begin{pmatrix} % pmatrix 环境创建一个带圆括号的矩阵
1 & 2 \\
3 & 4
\end{pmatrix},
\quad % \quad 用于在公式中产生一个较大间距
% cases 环境用于创建分段函数或方程组
\begin{cases}
x + 2y = 5 \\
3x - y = 1
\end{cases}
\]
3. 定理环境:让论证更具权威
% 首先在导言区定义定理样式
\newtheorem{theorem}{定理}[section] % 定义一个'theorem'环境, 名字叫“定理”, 编号随section变化
\begin{theorem}[勾股定理] % 环境的可选参数是定理的名称
在任何一个平面直角三角形中,两条直角边的平方之和,一定等于斜边的平方。
\begin{align*} a^2 + b^2 = c^2 \end{align*} % 使用 align* 避免公式编号
\end{theorem}
三、超越文本:专业表格与有序列表
掌握 LaTeX表格 的排版,特别是三线表,是学术论文的必备技能。
1. 三线表:学术论文的唯一标准
忘掉 Word 里那些复杂的边框线吧。booktabs 宏包提供的三线表简洁、清晰、专业。
\begin{tabular}{lccr} % 'l', 'c', 'r' 分别代表列内容左对齐、居中、右对齐
\toprule % 顶部粗线
姓名 & 年龄 & 成绩 \\
\midrule % 中部细线
张三 & 20 & 95 \\
李四 & 19 & 88 \\
\bottomrule % 底部粗线
\end{tabular}
2. 嵌套列表:清晰的逻辑层次
\begin{itemize} % 无序列表环境
\item 这是第一级条目
\begin{enumerate} % 有序列表环境
\item 这是第二级编号条目
\item 我们可以轻松插入特殊符号:$\star$ $\dagger$ $\S$
\end{enumerate}
\item 回到第一级条目
\end{itemize}
四、效率倍增:五个实用技巧
优雅地插入代码 (
listings宏包)
\begin{lstlisting}[language=Python, caption={Python 示例}] def hello_latex(): print("Hello, LaTeX!")
代码将保持格式和高亮
\end{lstlisting}
2. **自动化参考文献管理** (BibTeX)
- **文中引用**: `爱因斯坦 \cite{einstein1905} 提出了...`
- **文末生成列表**: `\bibliography{my_references}` (引用 `my_references.bib` 数据库)
3. **定义你自己的快捷命令**
```latex
% 在导言区定义
\newcommand{\R}{\mathbb{R}} % 定义新命令 \R 代表数学中的实数集符号
% 在正文中使用 $\R$ 表示所有实数的集合。
% 使用效果:ℝ 表示所有实数的集合。
强制图片位置: 将
[htbp]替换为[!h],LaTeX 会“不惜一切代价”将图片放在此处 (here)。语法高亮与自动补全: 使用 VS Code + LaTeX Workshop 插件,或专用的 TeXStudio 编辑器,能极大地提升编写体验。
五、学习路线图

第一天 (入门):注册一个 Overleaf 账号。这是一个强大的在线 LaTeX 编辑器,无需在本地安装任何东西,拥有海量模板,让你在 30 分钟内完成并编译第一份文档。
第一周 (进阶):通读一份简明教程,如**《一份(不太)简短的 LaTeX 2ε 介绍》** (The Not So Short Introduction to LaTeX 2ε),并尝试用 LaTeX 完成一次课程作业或报告。
第一个月 (精通):挑战一个具体项目,如制作一份精美的个人简历、使用 Beamer 宏包制作一份学术幻灯片,或使用 TikZ 绘制一个复杂的流程图。
建议:从模仿开始,以需求驱动。先找到合适模板并逐步修改;遇到具体问题(如“并排图片”)再查文档。
编译错误常见来源:拼写错误、括号/大括号不匹配、导言区缺少 \usepackage{}。
六、本地安装与编译(可复制)
安装(TeX Live,Linux):
sudo apt install -y texlive-full latexmk安装(Windows,MiKTeX):
- 下载并安装 MiKTeX;2) 勾选自动安装缺失宏包;3) 安装 latexmk(可通过 MiKTeX Console)。
最小可复现实例(mwe.tex):
\documentclass{article} \usepackage{amsmath} \begin{document} Hello, LaTeX. \begin{align} E &= mc^2 \end{align} \end{document}一键编译:
latexmk -pdf -interaction=nonstopmode mwe.tex
七、常见错误速查表
- 缺宏包:日志中包含 “Undefined control sequence”。解决:在导言区添加对应宏包(如
\usepackage{graphicx})。 - 括号/环境不匹配:日志定位到上一行或更上方。解决:对齐
\begin{}与\end{},善用编辑器括号高亮。 - 中文乱码:未加载
ctex或字体问题。解决:导言区加\usepackage{ctex};Windows/中文字体需在ctex宏包文档中确认配置。 - 图片插入失败:路径或后缀错误。解决:使用相对路径,图片建议放
figures/并避免中文文件名。 - 交叉引用 “??”:未编译足够轮次。解决:使用
latexmk自动多轮编译。