Markdown 数学公式语法
参考: Markdown 数学公式语法 和 Cmd Markdown 公式指导手册 等处所做笔记。感谢大神。
注意:github需要安装插件
GitHub Math Display才能正常显示数学公式GitHub Math Display插件地址:https://chrome.google.com/webstore/detail/github-math-display/cgolaobglebjonjiblcjagnpmdmlgmda/related
公式使用
插入公式
可插入行内公式或独立公式
- 行内公式
$ J_\alpha(x) = \sum_{m=0}^\infty \frac{(-1)^m}{m! \Gamma (m + \alpha + 1)} {\left({ \frac{x}{2} }\right)}^{2m + \alpha} \text {,行内公式示例} $这是行内公式 $ \qquad J_\alpha(x) = \sum_{m=0}^\infty \frac{(-1)^m}{m! \Gamma (m + \alpha + 1)} {\left({ \frac{x}{2} }\right)}^{2m + \alpha} \text {,行内公式示例} $
- 独立公式
$$ J_\alpha(x) = \sum_{m=0}^\infty \frac{(-1)^m}{m! \Gamma (m + \alpha + 1)} {\left({ \frac{x}{2} }\right)}^{2m + \alpha} \text {,独立公式示例} $$$$ J_\alpha(x) = \sum_{m=0}^ \infty \frac{(-1)^m}{m! \Gamma (m + \alpha + 1)} {\left({ \frac{x}{2} }\right)}^{2m + \alpha} \text {,独立公式示例} $$
输入上下标
^ 表示上标, _ 表示下标。如果上下标的内容多于一个字符,需要用 {} 将这些内容括成一个整体。上下标可以嵌套,也可以同时使用。
$$ x^{y^z}=(1+{\rm e}^x)^{-2xy^w} $$$ x^{y^z}=(1+{\rm e}^x)^{-2xy^w} $
输入括号和分隔符
()、[] 和 | 表示符号本身,使用 \{\} 来表示 {} 。当要显示大号的括号或分隔符时,要用 \left 和 \right 命令。 一些特殊的括号:
| 输入 | 显示 | 输入 | 显示 |
|---|---|---|---|
| \langle | $ \langle $ | \rangle | $\rangle$ |
| \lceil | $ \lceil $ | \rceil | $ \rceil $ |
| \lfloor | $ \lfloor $ | \rfloor | $ \rfloor $ |
| \lbrace | $ \lbrace $ | \rbrace | $ \rbrace $ |
$$ f(x,y,z) = 3y^2z \left( 3+\frac{7x+5}{1+y^2} \right) $$显示
$$ f(x,y,z) = 3y^2z \left( 3+\frac{7x+5}{1+y^2} \right) $$
有时候要用 \left. 或 \right. 进行匹配而不显示本身。
$$ \left. \frac{ {\rm d}u }{ {\rm d}x } \right| _{x=0} $$$$ \left. \frac{ {\rm d}u }{ {\rm d}x } \right| _{x=0} $$
输入分数
通常使用 \frac {分子} {分母} 命令产生一个分数,分数可嵌套。
便捷情况可直接输入 \frac ab 来快速生成一个 $ \frac ab $ 。
如果分式很复杂,亦可使用 分子 \over 分母 命令,此时分数仅有一层。
$$\frac{a-1}{b-1} \quad and \quad {a+1\over b+1}$$$$ \frac{a-1}{b-1} \quad and \quad {a+1 \over b+1} $$
输入开方
使用 \sqrt [根指数,省略时为2] {被开方数} 命令输入开方。
$$\sqrt{2} \quad and \quad \sqrt[n]{3}$$$$ \sqrt{2} \quad and \quad \sqrt[n]{3} $$
输入省略号
数学公式中常见的省略号有两种,\ldots 表示与文本底线对齐的省略号,\cdots 表示与文本中线对齐的省略号。
$$f(x_1,x_2,\underbrace{\ldots}_{\rm ldots} ,x_n) = x_1^2 + x_2^2 + \underbrace{\cdots}_{\rm cdots} + x_n^2$$$$ f(x_1,x_2,\underbrace{\ldots}{\rm ldots} ,x_n) = x_1^2 + x_2^2 + \underbrace{\cdots}{\rm cdots} + x_n^2 $$
输入矢量
使用 \vec{矢量} 来自动产生一个矢量。也可以使用 \overrightarrow 等命令自定义字母上方的符号。
$$\vec{a} \cdot \vec{b}=0$$$$ \vec{a} \cdot \vec{b}=0 $$
$$\overleftarrow{xy} \quad and \quad \overleftrightarrow{xy} \quad and \quad \overrightarrow{xy}$$$$ \overleftarrow{xy} \quad and \quad \overleftrightarrow{xy} \quad and \quad \overrightarrow{xy} $$
输入积分
使用 \int_积分下限^积分上限 {被积表达式} 来输入一个积分。
$$\int_0^1 {x^2} \,{\rm d}x$$$$ \int_0^1 {x^2} ,{\rm d}x $$
本例中 \, 和 {\rm d} 部分可省略,但建议加入,能使式子更美观。
输入极限运算
使用 \lim_{变量 \to 表达式} 表达式 来输入一个极限。如有需求,可以更改 \to 符号至任意符号。
$$ \lim_{n \to +\infty} \frac{1}{n(n+1)} \quad and \quad \lim_{x\leftarrow{示例}} \frac{1}{n(n+1)} $$$$ \lim_{n \to +\infty} \frac{1}{n(n+1)} \quad and \quad \lim_{x\leftarrow{示例}} \frac{1}{n(n+1)} $$
输入累加、累乘运算
使用 \sum_{下标表达式}^{上标表达式} {累加表达式} 来输入一个累加。 与之类似,使用 \prod \bigcup \bigcap 来分别输入累乘、并集和交集。 此类符号在行内显示时上下标表达式将会移至右上角和右下角。
$$\sum_{i=1}^n \frac{1}{i^2} \quad and \quad \prod_{i=1}^n \frac{1}{i^2} \quad and \quad \bigcup_{i=1}^{2} R$$$$ \sum_{i=1}^n \frac{1}{i^2} \quad and \quad \prod_{i=1}^n \frac{1}{i^2} \quad and \quad \bigcup_{i=1}^{2} R $$
$ \sum_{i=1}^n \frac{1}{i^2} \quad and \quad \prod_{i=1}^n \frac{1}{i^2} \quad and \quad \bigcup_{i=1}^{2} R $
输入希腊字母
输入 \小写希腊字母英文全称 和 \首字母大写希腊字母英文全称 来分别输入小写和大写希腊字母。 对于大写希腊字母与现有字母相同的,直接输入大写字母即可。
| 输入 | 显示 | 输入 | 显示 | 输入 | 显示 | 输入 | 显示 |
|---|---|---|---|---|---|---|---|
| \alpha | $ \alpha $ | A | A | \beta | $ \beta $ | B | |
| \gamma | \Gamma | \delta | \Delta | ||||
| \epsilon | E | \zeta | Z | ||||
| \eta | H | \theta | \Theta | ||||
| \iota | I | \kappa | K | ||||
| \lambda | \Lambda | \mu | M | ||||
| \nu | N | \xi | \Xi | ||||
| o | O | \pi | \Pi | ||||
| \rho | P | \sigma | \Sigma | ||||
| \tau | T | \upsilon | \Upsilon | ||||
| \phi | \Phi | \chi | X | ||||
| \psi | \Psi | \omega | \Omega |
部分字母有变量专用形式,以 \var- 开头。
| 小写形式 | 大写形式 | 变量形式 | 显示 |
|---|---|---|---|
| \epsilon | E | \varepsilon | $ \varepsilon $ |
| \theta | $\Theta$ | \vartheta | $\vartheta$ |
| \rho | P | \varrho | $\varrho$ |
| \sigma | $\Sigma$ | \varsigma | $\varsigma$ |
| \phi | $\Phi$ | \varphi | $\varphi$ |
输入其它特殊字符
若需要显示更大或更小的字符,在符号前插入 \large 或 \small 命令。 若找不到需要的符号,使用 $ \rm{Detexify^2} $ 来画出想要的符号。
(1).关系运算符
| 输入 | 显示 | 输入 | 显示 | 输入 | 显示 | 输入 | 显示 |
|---|---|---|---|---|---|---|---|
| \pm | \times | \div | \mid | ||||
| \nmid | \cdot | \circ | \ast | ||||
| \bigodot | \bigotimes | \bigoplus | \leq | ||||
| \geq | \neq | \approx | \equiv | ||||
| \sum | \prod | \coprod | \backslash |
(2).集合运算符
| 输入 | 显示 | 输入 | 显示 | 输入 | 显示 |
|---|---|---|---|---|---|
| \emptyset | \in | \notin | |||
| \subset | \supset | \subseteq | |||
| \supseteq | \bigcap | \bigcup | |||
| \bigvee | \bigwedge | \biguplus |
(3).对数运算符
| 输入 | 显示 | 输入 | 显示 | 输入 | 显示 |
|---|---|---|---|---|---|
| \log | \lg | \ln |
(4).三角运算符
| 输入 | 显示 | 输入 | 显示 | 输入 | 显示 |
|---|---|---|---|---|---|
| 30^\circ | \bot | \angle A | |||
| \sin | \cos | \tan | |||
| \csc | \sec | \cot |
(5).微积分运算符
| 输入 | 显示 | 输入 | 显示 | 输入 | 显示 |
|---|---|---|---|---|---|
| \int | \iint | \iiint | |||
| \iiiint | \oint | \prime | |||
| \lim | \infty | \nabla |
(6).逻辑运算符
| 输入 | 显示 | 输入 | 显示 | 输入 | 显示 |
|---|---|---|---|---|---|
| \because | \therefore | ||||
| \forall | \exists | \not\subset | |||
| \not< | \not> | \not= |
(7).戴帽符号
| 输入 | 显示 | 输入 | 显示 |
|---|---|---|---|
| \hat | \widehat | ||
| \tilde | \widetilde | ||
| \check | \breve | ||
| \grave | \acute |
(8).连线符号
| 输入 | 显示 |
|---|---|
| \fbox | |
| \overleftarrow | |
| \overrightarrow | |
| \overleftrightarrow | |
| \underleftarrow | |
| \underrightarrow | |
| \underleftrightarrow | |
| \overline | |
| \underline | |
| \overbrace{a+b+c+d}^ | |
| \underbrace{a+b+c+d}_ | |
| \overbrace{a+\underbrace{b+c}_{1.0}+d}^ | |
| \underbrace{a\cdot a\cdots a}_{b\text{ times}} |
(9).箭头符号
- 推荐使用符号:
| 输入 | 显示 | 输入 | 显示 | 输入 | 显示 | 输入 | 显示 | 输入 | 显示 |
|---|---|---|---|---|---|---|---|---|---|
| \to | $ \to $ | \mapsto | $ \mapsto $ | \implies | $ \implies $ | \iff | $ \iff $ | \impliedby | $ \impliedby $ |
- 其它可用符号:
| 输入 | 显示 | 输入 | 显示 |
|---|---|---|---|
| \uparrow | \Uparrow | ||
| \downarrow | \Downarrow | ||
| \leftarrow | \Leftarrow | ||
| \rightarrow | \Rightarrow | ||
| \leftrightarrow | \Leftrightarrow | ||
| \longleftarrow | \Longleftarrow | ||
| \longrightarrow | \Longrightarrow | ||
| \longleftrightarrow | \Longleftrightarrow |
如何进行字体转换
若要对公式的某一部分字符进行字体转换,可以用 {\字体 {需转换的部分字符}} 命令,其中 \字体 部分可以参照下表选择合适的字体。一般情况下,公式默认为意大利体 。 示例中 全部大写 的字体仅大写可用。
| 输入 | 说明 | 显示 | 输入 | 说明 | 显示 |
|---|---|---|---|---|---|
| \rm | 罗马体 | \cal | 花体 | ||
| \it | 意大利体 | \Bbb | 黑板粗体 | ||
| \bf | 粗体 | \mit | 数学斜体 | ||
| \sf | 等线体 | \scr | 手写体 | ||
| \tt | 打字机体 | ||||
| \frak | 旧德式字体 |
转换字体十分常用,例如在积分中:
\begin{array}{cc}
\mathrm{Bad} & \mathrm{Better} \\
\hline \\
\int_0^1 x^2 dx & \int_0^1 x^2 \,{\rm d}x
\end{array}$$ \begin{array}{cc} \mathrm{Bad} & \mathrm{Better} \ \hline \ \int_0^1 x^2 dx & \int_0^1 x^2 ,{\rm d}x \end{array} $$
注意比较两个式子间 与
的不同。 使用
\operatorname 命令也可以达到相同的效果,详见 定义新的符号 \operatorname 。
大括号和行标的使用
使用 \left 和 \right 来创建自动匹配高度的 (圆括号),[方括号] 和 {花括号} 。 在每个公式末尾前使用 \tag{行标} 来实现行标。
$$
f\left(
\left[
\frac{
1+\left\{x,y\right\}
}{
\left(
\frac{x}{y}+\frac{y}{x}
\right)
\left(u+1\right)
}+a
\right]^{3/2}
\right)
\tag{行标}
$$$$ f\left( \left[ \frac{ 1+\left{x,y\right} }{ \left( \frac{x}{y}+\frac{y}{x} \right) \left(u+1\right) }+a \right]^{3/2} \right) \tag{行标} $$
如果你需要在不同的行显示对应括号,可以在每一行对应处使用 \left. 或 \right. 来放一个"影子"括号:
$$
\begin{aligned}
a=&\left(1+2+3+ \cdots \right. \\
& \cdots+ \left. \infty-2+\infty-1+\infty\right)
\end{aligned}
$$$$ \begin{aligned} a=&\left(1+2+3+ \cdots \right. \ & \cdots+ \left. \infty-2+\infty-1+\infty\right) \end{aligned} $$
如果你需要将行内显示的分隔符也变大,可以使用 \middle 命令:
$$
\left\langle
q
\middle\|
\frac{\frac{x}{y}}{\frac{u}{v}}
\middle|
p
\right\rangle
$$$$ \left\langle
q \middle| \frac{\frac{x}{y}}{\frac{u}{v}} \middle| p \right\rangle $$
15.其它命令
(1).定义新的符号 \operatorname
查询 关于此命令的定义 和 关于此命令的讨论 来进一步了解此命令。
$$ \operatorname{Symbol} A $$$$ \operatorname{Symbol} A $$
(2).添加注释文字 \text
在 \text {文字} 中仍可以使用 $公式$ 插入其它公式。
$$ f(n)= \begin{cases} n/2, & \text {if $n$ is even} \\ 3n+1, & \text{if $n$ is odd} \end{cases} $$$$ f(n)= \begin{cases} n/2, & \text {if $n$ is even} \ 3n+1, & \text{if $n$ is odd} \end{cases} $$
(3).在字符间加入空格
有四种宽度的空格可以使用: \,、\;、\quad 和 \qquad 。
$$ a \, b \mid a \; b \mid a \quad b \mid a \qquad b $$$$ a , b \mid a ; b \mid a \quad b \mid a \qquad b $$
当然,使用 \text {n个空格} 也可以达到同样效果。
(4).更改文字颜色
使用 \color{颜色}{文字} 来更改特定的文字颜色。 更改文字颜色 需要浏览器支持 ,如果浏览器不知道你所需的颜色,那么文字将被渲染为黑色。 对于较旧的浏览器(HTML4与CSS2),以下颜色是被支持的:
| 输入 | 显示 | 输入 | 显示 |
|---|---|---|---|
| black | grey | ||
| silver | white | ||
| maroon | red | ||
| yellow | lime | ||
| olive | green | ||
| teal | auqa | ||
| blue | navy | ||
| purple | fuchsia |
对于较新的浏览器(HTML5与CSS3),额外的124种颜色将被支持: 输入 \color {#rgb} {text} 来自定义更多的颜色,其中 #rgb 的 r g b 可输入 0-9 和 a-f 来表示红色、绿色和蓝色的纯度(饱和度)。
\begin{array}{|rrrrrrrr|}\hline
\verb+#000+ & \color{#000}{text} & & &
\verb+#00F+ & \color{#00F}{text} & & \\
& & \verb+#0F0+ & \color{#0F0}{text} &
& & \verb+#0FF+ & \color{#0FF}{text}\\
\verb+#F00+ & \color{#F00}{text} & & &
\verb+#F0F+ & \color{#F0F}{text} & & \\
& & \verb+#FF0+ & \color{#FF0}{text} &
& & \verb+#FFF+ & \color{#FFF}{text}\\
\hline
\end{array}$$ \begin{array}{|rrrrrrrr|}\hline \verb+#000+ & \color{#000}{text} & & & \verb+#00F+ & \color{#00F}{text} & & \ & & \verb+#0F0+ & \color{#0F0}{text} & & & \verb+#0FF+ & \color{#0FF}{text}\ \verb+#F00+ & \color{#F00}{text} & & & \verb+#F0F+ & \color{#F0F}{text} & & \ & & \verb+#FF0+ & \color{#FF0}{text} & & & \verb+#FFF+ & \color{#FFF}{text}\ \hline \end{array} $$
\begin{array}{|rrrrrrrr|}
\hline
\verb+#000+ & \color{#000}{text} & \verb+#005+ & \color{#005}{text} & \verb+#00A+ & \color{#00A}{text} & \verb+#00F+ & \color{#00F}{text} \\
\verb+#500+ & \color{#500}{text} & \verb+#505+ & \color{#505}{text} & \verb+#50A+ & \color{#50A}{text} & \verb+#50F+ & \color{#50F}{text} \\
\verb+#A00+ & \color{#A00}{text} & \verb+#A05+ & \color{#A05}{text} & \verb+#A0A+ & \color{#A0A}{text} & \verb+#A0F+ & \color{#A0F}{text} \\
\verb+#F00+ & \color{#F00}{text} & \verb+#F05+ & \color{#F05}{text} & \verb+#F0A+ & \color{#F0A}{text} & \verb+#F0F+ & \color{#F0F}{text} \\
\hline
\verb+#080+ & \color{#080}{text} & \verb+#085+ & \color{#085}{text} & \verb+#08A+ & \color{#08A}{text} & \verb+#08F+ & \color{#08F}{text} \\
\verb+#580+ & \color{#580}{text} & \verb+#585+ & \color{#585}{text} & \verb+#58A+ & \color{#58A}{text} & \verb+#58F+ & \color{#58F}{text} \\
\verb+#A80+ & \color{#A80}{text} & \verb+#A85+ & \color{#A85}{text} & \verb+#A8A+ & \color{#A8A}{text} & \verb+#A8F+ & \color{#A8F}{text} \\
\verb+#F80+ & \color{#F80}{text} & \verb+#F85+ & \color{#F85}{text} & \verb+#F8A+ & \color{#F8A}{text} & \verb+#F8F+ & \color{#F8F}{text} \\
\hline
\verb+#0F0+ & \color{#0F0}{text} & \verb+#0F5+ & \color{#0F5}{text} & \verb+#0FA+ & \color{#0FA}{text} & \verb+#0FF+ & \color{#0FF}{text} \\
\verb+#5F0+ & \color{#5F0}{text} & \verb+#5F5+ & \color{#5F5}{text} & \verb+#5FA+ & \color{#5FA}{text} & \verb+#5FF+ & \color{#5FF}{text} \\
\verb+#AF0+ & \color{#AF0}{text} & \verb+#AF5+ & \color{#AF5}{text} & \verb+#AFA+ & \color{#AFA}{text} & \verb+#AFF+ & \color{#AFF}{text} \\
\verb+#FF0+ & \color{#FF0}{text} & \verb+#FF5+ & \color{#FF5}{text} & \verb+#FFA+ & \color{#FFA}{text} & \verb+#FFF+ & \color{#FFF}{text} \\
\hline
\end{array}$$ \begin{array}{|rrrrrrrr|} \hline \verb+#000+ & \color{#000}{text} & \verb+#005+ & \color{#005}{text} & \verb+#00A+ & \color{#00A}{text} & \verb+#00F+ & \color{#00F}{text} \ \verb+#500+ & \color{#500}{text} & \verb+#505+ & \color{#505}{text} & \verb+#50A+ & \color{#50A}{text} & \verb+#50F+ & \color{#50F}{text} \ \verb+#A00+ & \color{#A00}{text} & \verb+#A05+ & \color{#A05}{text} & \verb+#A0A+ & \color{#A0A}{text} & \verb+#A0F+ & \color{#A0F}{text} \ \verb+#F00+ & \color{#F00}{text} & \verb+#F05+ & \color{#F05}{text} & \verb+#F0A+ & \color{#F0A}{text} & \verb+#F0F+ & \color{#F0F}{text} \ \hline \verb+#080+ & \color{#080}{text} & \verb+#085+ & \color{#085}{text} & \verb+#08A+ & \color{#08A}{text} & \verb+#08F+ & \color{#08F}{text} \ \verb+#580+ & \color{#580}{text} & \verb+#585+ & \color{#585}{text} & \verb+#58A+ & \color{#58A}{text} & \verb+#58F+ & \color{#58F}{text} \ \verb+#A80+ & \color{#A80}{text} & \verb+#A85+ & \color{#A85}{text} & \verb+#A8A+ & \color{#A8A}{text} & \verb+#A8F+ & \color{#A8F}{text} \ \verb+#F80+ & \color{#F80}{text} & \verb+#F85+ & \color{#F85}{text} & \verb+#F8A+ & \color{#F8A}{text} & \verb+#F8F+ & \color{#F8F}{text} \ \hline \verb+#0F0+ & \color{#0F0}{text} & \verb+#0F5+ & \color{#0F5}{text} & \verb+#0FA+ & \color{#0FA}{text} & \verb+#0FF+ & \color{#0FF}{text} \ \verb+#5F0+ & \color{#5F0}{text} & \verb+#5F5+ & \color{#5F5}{text} & \verb+#5FA+ & \color{#5FA}{text} & \verb+#5FF+ & \color{#5FF}{text} \ \verb+#AF0+ & \color{#AF0}{text} & \verb+#AF5+ & \color{#AF5}{text} & \verb+#AFA+ & \color{#AFA}{text} & \verb+#AFF+ & \color{#AFF}{text} \ \verb+#FF0+ & \color{#FF0}{text} & \verb+#FF5+ & \color{#FF5}{text} & \verb+#FFA+ & \color{#FFA}{text} & \verb+#FFF+ & \color{#FFF}{text} \ \hline \end{array} $$
(5).添加删除线
使用删除线功能必须声明 $$ 符号。 在公式内使用 \require{cancel} 来允许 片段删除线 的显示。 声明片段删除线后,使用 \cancel{字符}、\bcancel{字符}、\xcancel{字符} 和 \cancelto{字符} 来实现各种片段删除线效果。
$$
\require{cancel}\begin{array}{rl}
\verb|y+\cancel{x}| & y+\cancel{x}\\
\verb|\cancel{y+x}| & \cancel{y+x}\\
\verb|y+\bcancel{x}| & y+\bcancel{x}\\
\verb|y+\xcancel{x}| & y+\xcancel{x}\\
\verb|y+\cancelto{0}{x}| & y+\cancelto{0}{x}\\
\verb+\frac{1\cancel9}{\cancel95} = \frac15+& \frac{1\cancel9}{\cancel95} = \frac15 \\
\end{array}
$$使用 \require{enclose} 来允许 整段删除线 的显示。 声明整段删除线后,使用 \enclose{删除线效果}{字符} 来实现各种整段删除线效果。 其中,删除线效果有 horizontalstrike、verticalstrike、updiagonalstrike 和 downdiagonalstrike,可叠加使用。
$$
\require{enclose}\begin{array}{rl}
\verb|\enclose{horizontalstrike}{x+y}| & \enclose{horizontalstrike}{x+y}\\
\verb|\enclose{verticalstrike}{\frac xy}| & \enclose{verticalstrike}{\frac xy}\\
\verb|\enclose{updiagonalstrike}{x+y}| & \enclose{updiagonalstrike}{x+y}\\
\verb|\enclose{downdiagonalstrike}{x+y}| & \enclose{downdiagonalstrike}{x+y}\\
\verb|\enclose{horizontalstrike,updiagonalstrike}{x+y}| & \enclose{horizontalstrike,updiagonalstrike}{x+y}\\
\end{array}
$$此外, \enclose 命令还可以产生包围的边框和圆等,参见 MathML Menclose Documentation 以查看更多效果。