Skip to main content

编写数学表达式

使用 Markdown 在 GitHub 上显示数学表达式。

关于编写数学表达式

为了实现数学表达式的清晰传达,GitHub 支持 Markdown 中 LaTeX 格式的数学表达式。 有关详细信息,请参阅 Wikibook 中的 LaTeX/数学

GitHub 的数学呈现功能使用 MathJax;真是一种基于 JavaScript 的开源显示引擎。 MathJax 支持广泛的 LaTeX 宏,以及几个有用的辅助功能扩展。 有关详细信息,请参阅 MathJax 文档MathJax 辅助功能扩展文档

数学表达式可在以下项中呈现:GitHub Issues、GitHub Discussions、拉取请求、Wiki 和 Markdown 文件。

编写内联表达式

有两个选项可用于将内嵌在文本中的数学表达式分隔出来。 可以使用美元符号 ($) 将表达式括起来,或者以在表达式开头使用 $`,并在其末尾使用 `$。 当正在编写的表达式包含与 markdown 语法重叠的字符时,后一种语法很有用。 有关详细信息,请参阅“基本编写和格式设置语法”。

This sentence uses `$` delimiters to show math inline:  $\sqrt{3x-1}+(1+x)^2$

呈现的 Markdown 的屏幕截图,其中显示了数学表达式如何显示在 GitHub 上。 该方程式是“3x - 1”的平方根加上“1 + x”的平方。

This sentence uses $\` and \`$ delimiters to show math inline:  $`\sqrt{3x-1}+(1+x)^2`$

呈现的 Markdown 的屏幕截图,其中显示了数学表达式如何显示在 GitHub 上。 该方程式是“3x - 1”的平方根加上“1 + x”的平方。

将表达式编写为块

要以块的形式添加数学表达式,请启动一个新行,并使用两个美元符号 $$ 分隔表达式。

**The Cauchy-Schwarz Inequality**
$$\left( \sum_{k=1}^n a_k b_k \right)^2 \leq \left( \sum_{k=1}^n a_k^2 \right) \left( \sum_{k=1}^n b_k^2 \right)$$

呈现的 Markdown 的屏幕截图,其中显示复杂的方程式如何显示在 GitHub 上。 加粗的文本为“The Cauchy-Schwarz Inequality”(柯西不等式)。 文本下方显示的是一个方程式,显示数列 A 和数列 B 在 k 取值从 1 到 n 的乘积累加的平方小于等于数列 A 中的数字的平方累加(1 到 n)与数列 B 中的数字的平方累加(1 到 n)的乘积。

或者,可以使用 ```math 代码块语法将数学表达式显示为块。 使用此语法时,无需使用 $$ 分隔符。 以下内容的呈现方式与上述内容相同:

**The Cauchy-Schwarz Inequality**

```math
\left( \sum_{k=1}^n a_k b_k \right)^2 \leq \left( \sum_{k=1}^n a_k^2 \right) \left( \sum_{k=1}^n b_k^2 \right)
```

在数学表达式所在的行中和数学表达式内编写美元符号

要在数学表达式所在的同一行中将美元符号显示为字符,需要对非分隔符 $ 进行转义以确保行正确呈现。

  • 在数学表达式内,在显式 $ 之前添加一个 \ 符号。

    This expression uses `\$` to display a dollar sign: $\sqrt{\$4}$
    

    呈现的 Markdown 的屏幕截图,其中显示了美元符号前的反斜杠如何将符号显示为数学表达式的一部分。

  • 在数学表达式之外,但在同一行上,在显式 $ 两边使用 span 标记。

    To split <span>$</span>100 in half, we calculate $100/2$
    

    呈现的 Markdown 的屏幕截图,其中显示了美元符号两侧的 span 标记如何将该符号显示为内联文本而不是数学公式的一部分。

延伸阅读