1712 字
9 分钟
【科研写作】01 - Markdown 与 Latex 数学公式书写

前言#

LaTex是一个排版系统,和我们常用的Word有本质的区别。 与Markdown类似,通过编写“代码”来生成文档。我们写Latex是纯文本脚本,通过编译器处理后,能够生成精美、严谨排版的PDF格式文档。在理工科领域,LaTex是独一无二的存在,无论是复杂的矩阵、微积分公式还是希腊字母,使用LaTex排版都非常专业且美观,Word的公式编译器在美感和效率上难以企及。


Markdown和LaTex这两者都是通过“标记语言”来控制格式,但定位完全不同。

特性MarkdownLaTeX
定位轻量级标记语言,追求易读易写。专业排版系统,追求极致的排版质量。
学习曲线极低较高,需要学习宏包、环境和命令。
功能性基础排版(标题、加粗、列表)。极其强大(复杂公式、交叉引用、自动目录、精细到微米的间距控制)。
文件大小非常小。基础安装包很大(完整版数 GB),包含大量宏包。
适用场景笔记、博客、GitHub 项目说明。学术论文、书籍、幻灯片(Beamer)、复杂公式。

一、Latex 基本语法#

LaTeX 的语法逻辑非常清晰。它的结构主要分为两个部分:导言区(Preamble)和正文区(Body)


1. 文档的基本结构#

一个最简单的 LaTeX 文件(.tex)长这样:

% 1. 声明文档类型 (如 article, report, book)
\documentclass{article}
% 2. 导言区:引入宏包(类似 Python 的 import 或 C 的 include)
\usepackage[utf8]{inputenc} % 处理编码
\usepackage{amsmath} % 数学公式增强包
% 3. 正文区
\begin{document}
Hello, LaTeX! 这是我的第一个文档。
\end{document}

2. 常用文本格式命令#

LaTeX 的命令通常以反斜杠 \ 开头,参数放在花括号 {} 中。

  • 分段:在代码里空一行,或者使用 \par
  • 粗体\textbf{加粗文本}
  • 斜体\textit{斜体文本}
  • 章节标题
    • \section{一级标题}
    • \subsection{二级标题}
    • \subsubsection{三级标题}

3. 环境(Environments)#

“环境”用于处理需要特殊格式的区块,以 \begin{...} 开始,\end{...} 结束。

列表环境#

  • 无序列表: 代码段

    \begin{itemize}
    \item 第一项
    \item 第二项
    \end{itemize}
  • 有序列表:将 itemize 换成 enumerate 即可。


4. 数学公式(核心语法)#

这是 LaTeX 最强大的地方。公式分为行内公式行间公式

  • 行内公式:使用 $ ... $。例如:$a^2 + b^2 = c^2$ 会在段落中显示 a2+b2=c2a^2 + b^2 = c^2
  • 行间公式:使用 \[ ... \]equation 环境。
    \begin{equation}
    E = mc^2
    \end{equation}

常用数学符号对照:#

  • 上下标x^2 (x2x^2), a_n (ana_n)
  • 分式\frac{分子}{分母} (12\frac{1}{2})
  • 根号\sqrt{x} (x\sqrt{x})
  • 希腊字母\alpha, \beta, \gamma, \pi (α,β,γ,π\alpha, \beta, \gamma, \pi)
  • 求和/积分\sum_{i=1}^n (i=1n\sum_{i=1}^n), \int_a^b (ab\int_a^b)

5. 插入图片与表格#

插入图片#

需要先在导言区加入 \usepackage{graphicx}

\begin{figure}[h] % [h] 表示放在当前位置 (here)
\centering
\includegraphics[width=0.5\textwidth]{image_name}
\caption{图片标题}
\label{fig:my_label}
\end{figure}

插入表格#

建议使用在线生成器(如 Tables Generator),因为手写复杂的 LaTeX 表格代码比较繁琐。

6. 交叉引用(自动编号)#

这是 LaTeX 自动化的体现。你不需要手动写“见图 3”,只需要:

  1. 在图表或章节处设置标签:\label{key}
  2. 在正文里引用:As shown in Figure \ref{key}. LaTeX 在编译时会自动帮你填上正确的数字。

二、Markdown书写LaTex#

在 Markdown 中使用 LaTeX,本质上是利用 Markdown 解析器(如 MathJax 或 KaTeX)来渲染 LaTeX 格式的数学公式。


两者的联系#

  • 公式标准:Markdown 本身不支持复杂公式,但现在几乎所有主流的 Markdown 编辑器(如 Typora, Obsidian)都使用 LaTeX 语法来渲染数学公式。例如输入 $E=mc^2$
  • 相互转换:可以通过工具(如 Pandoc)将 Markdown 转换为 LaTeX,或者反向转换。

核心语法#

在Markdown环境中,LaTex公式主要通过符号$来触发。

行内公式 (Inline)#

  • 语法:将公式包裹在两个单美元符号之间 $ ... $
  • 效果:公式会嵌入在文字流中,不会另起一行。
  • 示例勾股定理是 $a^2 + b^2 = c^2$。

块级公式 (Display/Block)#

  • 语法:将公式包裹在两个双美元符号之间 $$...$$
  • 效果:公式会独占一行,通常居中显示,且字体略大。
  • 示例
    $$
    E = mc^2
    $$

三、示例#

1. 基础运算与符号#

说明LaTeX 语法渲染效果
上下标x_{i}^{2} + y_{j}^{3}xi2+yj3x_{i}^{2} + y_{j}^{3}
分式\frac{a+b}{c-d}a+bcd\frac{a+b}{c-d}
开方\sqrt[n]{x}xn\sqrt[n]{x}
希腊字母\alpha, \beta, \gamma, \omega, \Omegaα,β,γ,ω,Ω\alpha, \beta, \gamma, \omega, \Omega
向量/粗体\vec{a} \cdot \mathbf{b}ab\vec{a} \cdot \mathbf{b}

2. 高等数学#

说明LaTeX 语法渲染效果
累加 (Sum)\sum_{i=1}^{n} i^2i=1ni2\sum_{i=1}^{n} i^2
积分 (Integral)\int_{a}^{b} f(x) \, dxabf(x)dx\int_{a}^{b} f(x) \, dx
极限 (Limit)\lim_{x \to \infty} \frac{1}{x}limx1x\lim_{x \to \infty} \frac{1}{x}
偏导数\frac{\partial y}{\partial x}yx\frac{\partial y}{\partial x}

3. 线性代数#

对于矩阵和多行公式,建议使用块级公式(即包裹在 $$...$$ 之间)以获得最佳显示效果。

矩阵 (Matrix)#

\begin{bmatrix}
1 & 0 & 0 \\
0 & 1 & 0 \\
0 & 0 & 1
\end{bmatrix}

[100010001]\begin{bmatrix} 1 & 0 & 0 \\ 0 & 1 & 0 \\ 0 & 0 & 1 \end{bmatrix}

分段函数 (Cases)#

f(n) = \begin{cases}
n/2, & \text{if } n \text{ is even} \\
3n+1, & \text{if } n \text{ is odd}
\end{cases}

f(n)={n/2,if n is even3n+1,if n is oddf(n) = \begin{cases} n/2, & \text{if } n \text{ is even} \\ 3n+1, & \text{if } n \text{ is odd} \end{cases}

多行对齐 (Aligned)#

当你推导公式时,希望等号对齐:

\begin{aligned}
(a+b)^2 &= (a+b)(a+b) \\
&= a^2 + 2ab + b^2
\end{aligned}

(a+b)2=(a+b)(a+b)=a2+2ab+b2\begin{aligned} (a+b)^2 &= (a+b)(a+b) \\ &= a^2 + 2ab + b^2 \end{aligned}


4. 进阶#

  1. 括号自动缩放:如果你写 (\frac{1}{2}),括号会很小,很难看。
    • 改进:使用 \left( \frac{1}{2} \right)。效果:(12)\left( \frac{1}{2} \right)。括号会自动包裹住内容。
  2. 公式中的空格:LaTeX 公式中直接打空格是无效的。
    • 微调间距\, (小空格), \; (大空格), \quad (一个字符宽度), \qquad (两个字符宽度)。
  3. 公式中的正体:变量默认是斜体,但单位(如 kg, m/s)或特定函数(如 log, sin)应该用正体。
    • 正确写法\sin(x), 10 \, \text{kg}。效果:sin(x)\sin(x), 10kg10 \, \text{kg}

总结#

  • 行内引用:使用 $公式$,适合把符号嵌入句子。
  • 独立展示:使用 $$公式$$,适合展示核心结论。
  • 代码查阅:遇到复杂的直接去 Mathpix 截图,利用AI编写。

常用工具汇总#

类别工具名称核心功能与亮点
编辑器Overleaf在线协作 LaTeX,免安装,内置海量期刊模板。
编辑器VS Code/Obsidian/Typora快速本地撰写
公式输入Mathpix Snip截图自动转 LaTeX 代码
公式输入Detexify手写符号识别,解决“不知道符号命令是什么”的问题。
表格制作Tables Generator像用 Excel 一样在线画表,一键生成 LaTeX 源码。
文献管理Zotero / BibTeX自动管理参考文献,一键生成文中引用和末尾列表。
矢量绘图TikZ / Matplotlib生成无限放大不失真的学术图表,支持直接嵌入 LaTeX。

参考文章#

【科研写作】01 - Markdown 与 Latex 数学公式书写
http://www.turinblog.cn/posts/科研写作01---markdown-与-latex-数学公式书写/
作者
Szturin
发布于
2024-12-16
许可协议
CC BY-NC-SA 4.0