-
Notifications
You must be signed in to change notification settings - Fork 3.8k
Markdown插入数学公式 By 夏洛克
- 语法:
<img src="http://chart.googleapis.com/chart?cht=tx&chl= 在此插入Latex公式" style="border:none;">
- 例子:
<img src="http://chart.googleapis.com/chart?cht=tx&chl=\Large x=\frac{-b\pm\sqrt{b^2-4ac}}{2a}" style="border:none;">
结果:
Google Chart服务器的响应速度可以,但据说可能复杂一些的Latex公式可能无法解析.
##使用MathJax引擎
大家都看过Stackoverflow上的公式吧,漂亮,其生成的不是图片。这就要用到MathJax引擎,在Markdown中添加MathJax引擎也很简单,
<script type="text/javascript" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=default>\</script>
$$ + enter x=\frac{-b\pm\sqrt{b^2-4ac}}{2a}
显示结果:
$$
x=\frac{-b\pm\sqrt{b^2-4ac}}{2a}
$$
LaTeX的数学公式有两种:行内公式和块级公式。行内公式放在文中与其它文字混编,块级公式单独成行。都使用美元符号进行标记显示。
##行内公式
- 标记方法:使用一个美元符号包围起来$数学公式$
行内公式:$\Gamma(n) = (n-1)!\quad\forall n\in\mathbb N$
- 效果:$\Gamma(n) = (n-1)!\quad\forall n\in\mathbb N$
##块级公式
- 标记方法:使用两个美元符号包围起来$$数学公式$$
例子:$$ x=\frac{-b\pm\sqrt{b^2-4ac}}{2a} $$
- 效果: $$ x=\frac{-b\pm\sqrt{b^2-4ac}}{2a} $$
##上标和下标
^表示上标,_表示下标。如果上下标的内容多于一个字符,要用{}把这些内容括起来当成一个整体。上下标是可以嵌套的,也可以同时使用。
- 例子:x^{y^z}=(1+e^x)^{-2xy^w}
- 效果:$$x^{y^z}=(1+e^x)^{-2xy^w}$$
如果要在左右两边都有上下标,可以用\sideset命令。
- 例子:\sideset{^1_2}{^3_4}\bigotimes
- 效果:
$$\sideset{^1_2}{^3_4}\bigotimes$$
##分数表示
方法1:\frac{分子}{分母} 方法2:分子 \over 分母
- 例子: \frac{a+b}{c+d}或1 \over 3
- 效果:
$$\frac{a+b}{c+d}$$ 或 $$1 \over 3$$
注意:对于\frac的方法,如果分子分母都是单个数,那么大括号{}可以省略,如:$\frac12$表示12。
##各种括号
()、[]和|可以直接表示自己,而{}本来用于分组,因此需要用{}来表示自身,也可以使用\lbrace 和\rbrace来表示,其它括号见下面那个表。
- 例子:{[z-(1+\frac23x)y]\div 4}
- 效果:
$${[z-(1+\frac23x)y]\div 4}$$
注意原始符号并不会随着公式大小缩放。有时候我们想要括号和分隔符显示的大点,比如上面例子中希望括号能把整个分数都包住,那么可以用**\left和\righ**t标记,实现自适应调整。
例子: \left(1+\frac23x\right)
效果:
\left和\right标记能应用的括号很多:
符号名称 | LaTex代码 | 例子 | 效果 |
---|---|---|---|
小括号 | ( 和 ) | \left(\frac12\right) | |
中括号 | [ 和 ] | \left[\frac12\right] | |
大括号 | { 和 } | \left\lbrace\frac12\right\rbrace | $ \left\lbrace\frac12\right\rbrace $ |
尖括号 | \left\langle\frac12\right\rangle | ||
向上取整 | $ \lceil 和 \rceil $ | \left\lceil\frac12\right\rceil | |
向下取整 | $ \lfloor 和 \rfloor$ | \left\lfloor\frac12\right\rfloor |
(上面例子只需要在首尾加上$就可以显示效果了。)
注意:
\left和\right标记必须是成对出现的,但有时候我们只用到其中一个,比如只用一个|当作分割线,这时候可以通过.来表示空的那一方,即用\left.表达左边空的情况,用\right.表达右边空的情况。
- 例子:\left. \frac{du}{dx} \right| _{x=0}
- 效果:
##根号表示
根号开方使用\sqrt标记,语法格式如下:
\sqrt[开方次数,默认为2]{开方因子}
- 例子: \sqrt{x^3}$ 和 $\sqrt[3]{\frac xy}
- 效果: $$\sqrt{x^3}$ 和 $\sqrt[3]{\frac xy}$$
注意:对于非常复杂的表达式,建议使用{...}^{1/n}代替(n是开方次数)。
##省略号
数学公式中常见的省略号有两种,\ldots表示与文本底线对齐的省略号,\cdots表示与文本中线对齐的省略号。
- 例子:f(x_1,x_2,\ldots,x_n) = x_1^2 + x_2^2 + \cdots + x_n^2
- 效果:
$$f(x_1,x_2,\ldots,x_n) = x_1^2 + x_2^2 + \cdots + x_n^2$$
注意:\ldot和\cdot可以表示与文本底线和中线对齐的单个点。
##矢量表示
矢量用\vect标记实现,语法格式如下: \vec{矢量值}
- 例子:\vec{a} \cdot \vec{b}=0
- 效果:
$\vec{a} \cdot \vec{b}=0$
间隔空间 通常MathJax通过内部策略自己管理公式内部的空间,因此a︹︹b与a︹︹︹︹︹b(︹表示空格)都会显示为ab。可以通过在ab间加入\空格或;增加些许间隙,\quad 与 \qquad 会增加更大的间隙。
例子:a;b或 a\quad b 或 a\qquad b
效果:$a;b$ 或
##希腊字母
用于查询和对比
序号 | 大写 | LaTex代码 | 小写 | LaTex代码 | 中文名称 |
---|---|---|---|---|---|
1 | A | α | \alpha | 阿尔法 | |
2 | B | \Beta | β | \beta | 贝塔 |
3 | Γ | \Gamma | γ | \gamma | 伽马 |
4 | D | \Delta | δ | \delta | 德尔塔 |
5 | E | \Epsilon | ϵ | \epsilon | 伊普西隆 |
6 | Z | \Zeta | ζ | \zeta | 泽塔 |
7 | H | \Eta | η | \eta | 伊塔 |
8 | Θ | \Theta | θ | \theta | 西塔 |
9 | I | \Iota | ι | \iota | 约塔 |
10 | K | \Kappa | κ | \kappa | 卡帕 |
11 | Λ | \Lambda | λ | \lambda | 兰姆达 |
12 | M | \Mu | μ | \mu | 缪 |
13 | N | \Nu | ν | \nu | 纽 |
14 | X | \Xi | ξ | \xi | 克西 |
15 | O | \Omicron | ο | \omicron | 欧米克隆 |
16 | P | \Pi | π | \pi | 派 |
17 | R | \Rho | ρ | \rho | 柔 |
18 | Σ | \sigma | σ | \sigma | 西格玛 |
19 | T | \tau | τ | \tau | 陶 |
20 | Υ | \upsilon | υ | \upsilon | 宇普西隆 |
21 | Φ | \phi | ϕ | \phi | 弗爱 |
22 | X | \chi | χ | \chi | 卡 |
23 | Ψ | \psi | ψ | \psi | 普赛 |
24 | Ω | \omega | ω | \omega | 欧米伽 |
异体 | E | ε | \varepsilon | 异体 | |
异体 | K | ϰ | \varkappa | 异体 | |
异体 | Θ | ϑ | \vartheta | 异体 | |
异体 | P | ϖ | \varpi | 异体 | |
异体 | R | ϱ | \varrho | 异体 | |
异体 | Σ | ς | \varsigma | 异体 | |
异体 | Φ | φ | \varphi | 异体 |
##特殊字符
http://mohu.org/info/symbols/symbols.htm
关系运算符 | 集合运算符 | 三角运算符 | 微积分运算符 | 箭头符号 |
---|---|---|---|---|
±:\pm
|
∅:\emptyset
|
⊥:\bot | ∵:\because | ↑:\uparrow |
×:\times
|
∈:\in
|
∠:\angle | ∴:\therefore | ↓:\downarrow |
÷:\div
|
∉:`\notin | $30^\circ$30^\circ | ∀:\forall | ⇑:\Uparrow |
∣: \mid
|
⊂:\subset
|
sin:\sin | ∃:\exists | ⇓:\Downarrow |
∤:\nmid
|
⊃:\supset
|
cos:\cos | ≠:\not= | →:\rightarrow |
⋅: \cdot
|
⊆:\subseteq
|
tan:\tan | ≯:\not> | ←:\leftarrow |
∘: \circ
|
⊇:\supseteq
|
cot:\cot | ⊄:\not\subset | ⇒:\Rightarrow |
∗: \ast
|
⋂:\bigcap
|
sec:\sec | 戴帽符号 | ⇐:\Leftarrow |
⨀: \bigodot
|
⋃:\bigcup
|
csc:\csc |
|
⟶:\longrightarrow |
⨂: \bigotimes
|
⋁:\bigvee
|
微积分运算符 |
|
⟵:\longleftarrow |
⨁: \bigoplus
|
⋀:\bigwedge
|
$ f(x,y) $ |
|
⟹:\Longrightarrow |
≤: \leq
|
⨄:\biguplus
|
∫:\int | 连线符号 | ⟸:\Longleftarrow |
≥:\geq
|
⨆:\bigsqcu
|
∬:\iint |
|
空格 |
≠: \neq
|
∭:\iiint |
|
的&\ensp;的:的 的 | |
≈: \approx
|
对数运算符 | ∮:\oint |
|
的 &\emsp; 的:的 的 |
≡: \equiv
|
log:$\log $ | lim:\lim |
|
的 &\nbsp; 的:的 的 |
∑: \sum
|
lg:$\lg $ | ∞:\infty | ||
∏: \prod
|
ln:$\ln $ | ∇:\nabla | ||
∐: \coprod
|
′:\prime |
-
例子:(使用$$显示公式)
\sum_{i=0}^n \frac{1}{i^2} \tag{1} \prod_{i=0}^n \frac{1}{i^2} \tag{2} \int_0^1 x^2 {\rm d}x \tag{3} \lim_{n \rightarrow +\infty} \frac{1}{n(n+1)} \tag{4}
e^{i\theta}=cos\theta+\sin\theta i\tag{5}
\begin{matrix} 1 & 2 & 3 \ 4 & 5 & 6 \ 7 & 8 & 9 \end{matrix} \tag{6}
\left[ \begin{matrix} 1 & 2 & 3 \ 4 & 5 & 6 \ 7 & 8 & 9 \end{matrix} \right]\tag{7}
-
效果:
$ \begin{matrix} 1 & 2 & 3 \ 4 & 5 & 6 \ 7 & 8 & 9 \end{matrix} \tag{6} $
$ \left[ \begin{matrix} 1 & 2 & 3 \ 4 & 5 & 6 \ 7 & 8 & 9 \end{matrix} \right]\tag{7} $
起始标记\begin{matrix}
,结束标记\end{matrix}
每一行末尾标记\\\
,行间元素之间以&
分隔
举例:
$$\begin{matrix}
1&0&0\\
0&1&0\\
0&0&1\\
\end{matrix}$$
呈现为: $$ \begin{matrix}1&0&0\0&1&0\\end{matrix} $$
- 在起始、结束标记处用下列词替换
matrix
-
pmatrix
:小括号边框 -
bmatrix
:中括号边框 -
Bmatrix
:大括号边框 -
vmatrix
:单竖线边框 -
Vmatrix
:双竖线边框
- 横省略号:
\cdots
- 竖省略号:
\vdots
- 斜省略号:
\ddots
举例
$$\begin{bmatrix}
{a_{11}}&{a_{12}}&{\cdots}&{a_{1n}}\\
{a_{21}}&{a_{22}}&{\cdots}&{a_{2n}}\\
{\vdots}&{\vdots}&{\ddots}&{\vdots}\\
{a_{m1}}&{a_{m2}}&{\cdots}&{a_{mn}}\\
\end{bmatrix}$$
呈现为: $$ $$\begin{bmatrix} {a_{11}}&{a_{12}}&{\cdots}&{a_{1n}}\ {a_{21}}&{a_{22}}&{\cdots}&{a_{2n}}\ {\vdots}&{\vdots}&{\ddots}&{\vdots}\ {a_{m1}}&{a_{m2}}&{\cdots}&{a_{mn}}\ \end{bmatrix}$$ $$
- 需要array环境,起始、结束以{array}声明
- 对齐方式,在{array}后以{}统一声明
- 左对齐:l ;居中:c ;右对齐:r
- 竖直线:对齐时插入
- 插入水平线:\hline
举例
$$\begin{array}{c|lll}
{↓}&{a}&{b}&{c}\\
\hline
{R_1}&{c}&{b}&{a}\\
{R_2}&{b}&{c}&{c}\\
\end{array}$$
呈现为 $$ \begin{array}{c|lll} {↓}&{a}&{b}&{c}\ \hline {R_1}&{c}&{b}&{a}\ {R_2}&{b}&{c}&{c}\ \end{array} $$
- 需要cases环境:起始、结束处以{cases}声明
举例
$$\begin{cases}
a_1x+b_1y+c_1z=d_1\\
a_2x+b_2y+c_2z=d_2\\
a_3x+b_3y+c_3z=d_3\\
\end{cases}
$$
呈现为 $$ \begin{cases} a_1x+b_1y+c_1z=d_1\ a_2x+b_2y+c_2z=d_2\ a_3x+b_3y+c_3z=d_3\ \end{cases} $$
##字体种类
公式里的字符也有字体的选择,若要对公式的某一部分字符进行字体转换,可以用如下语法格式:
{字体标记 需转换的部分字符}
其中“字体标记”可以参照下表选择合适的字体。一般情况下,公式默认为意大利体。
字体标记 | 字体名词 | 例子 | 效果 |
---|---|---|---|
\rm | 罗马体 | {\rm ABCDE} | |
\bf | 粗体 | {\bf ABCDE} | |
\Bbb | 黑板粗体字 | {\Bbb ABCDE} | |
\sl | 倾斜体 | {\ ABCDE} | |
\mit | 数学斜体 | {\mit ABCDE} | |
\scr | 小体大写字母 | {\scr ABCDE} | |
\it | 意大利体 | {\it ABCDE} | |
\cal | 花体 | {\scr ABCDE} | |
\sf | 等线体 | {\sf ABCDE} | |
\tt | 打字机字体 | {\tt ABCDE} | |
\frak | Fraktur字母(一种德国字体) | {\frak ABCDE} | |
\mathtt | \mathtt | ||
\boldsymbol | 黑体 | \boldsymbol | |
小傅哥(微信:fustack),公众号:bugstack虫洞栈
| bugstack.cn - 沉淀、分享、成长,让自己和他人都能有所收获!
🌏 知识星球:码农会锁
实战项目:「DDD+RPC分布式抽奖系统
」、专属小册、问题解答、简历指导、架构图稿、视频课程
🐲 头条
-
💥
🎁 Lottery 抽奖系统
- 基于领域驱动设计的四层架构的互联网分布式开发实践 -
小傅哥的《重学 Java 设计模式》
- 全书彩印、重绘类图、添加内容 -
⭐小傅哥的《Java 面经手册》
- 全书5章29节,417页11.5万字,完稿&发版 -
小傅哥的《手撸 Spring》
- 通过带着读者手写简化版 Spring 框架,了解 Spring 核心原理 -
🌈小傅哥的《SpringBoot 中间件设计和开发》
- 小册16个中间件开发30个代码库
⛳ 目录
💋 精选
🐾 友链
建立本开源项目的初衷是基于个人学习与工作中对 Java 相关技术栈的总结记录,在这里也希望能帮助一些在学习 Java 过程中遇到问题的小伙伴,如果您需要转载本仓库的一些文章到自己的博客,请按照以下格式注明出处,谢谢合作。
作者:小傅哥
链接:https://bugstack.cn
来源:bugstack虫洞栈
2021年10月24日,小傅哥
的文章全部开源到代码库 CodeGuide
中,与同好同行,一起进步,共同维护。
这里我提供 3 种方式:
-
提出
Issue
:在 Issue 中指出你觉得需要改进/完善的地方(能够独立解决的话,可以在提出 Issue 后再提交PR
)。 -
处理
Issue
: 帮忙处理一些待处理的Issue
。 -
提交
PR
: 对于错别字/笔误这类问题可以直接提交PR
,无需提交Issue
确认。
详细参考:CodeGuide 贡献指南 - 非常感谢你的支持,这里会留下你的足迹
- 加群交流 本群的宗旨是给大家提供一个良好的技术学习交流平台,所以杜绝一切广告!由于微信群人满 100 之后无法加入,请扫描下方二维码先添加作者 “小傅哥” 微信(fustack),备注:加群。
- 公众号(bugstack虫洞栈) - 沉淀、分享、成长,专注于原创专题案例,以最易学习编程的方式分享知识,让自己和他人都能有所收获。
感谢以下人员对本仓库做出的贡献或者对小傅哥的赞赏,当然不仅仅只有这些贡献者,这里就不一一列举了。如果你希望被添加到这个名单中,并且提交过 Issue 或者 PR,请与我联系。