MarkDown基础及表格、KaTeX公式、矩阵、流程图、UML图、甘特图语法

本文主要是介绍MarkDown基础及表格、KaTeX公式、矩阵、流程图、UML图、甘特图语法,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

概述

最多可设置6级标题

技巧

列表

有序列表

MD语法:

1. 你好
2. 我也好

呈现效果:

  1. 你好
  2. 我也好

无序列表

MD语法:

- a
- b
* aa
* bb
+ aaa
+ bbb

效果:

  • a
  • b
  • aa
  • bb
  • aaa
  • bbb

结论,支持三种方式:-*+

TODO列表

MD语法:

- [x] 后端接口开发
- [ ] 与前端联调

呈现效果:

  • 后端接口开发
  • 与前端联调

加粗斜体与删除线

MD语法:

*斜体*,_斜体1_,**加粗**,__加粗1__,***粗斜体***,**_粗斜体1_**,~~删除线~~ 

效果:
斜体斜体1加粗加粗1粗斜体粗斜体1删除线

结论:一个*_表示斜体,两个*_表示加粗,三个*_表示加粗斜体。

分割线

单独一行里输入3个或以上的短横线-、星号*或下划线_

引用、嵌套引用

一个>表示引用,两个>表示嵌套引用
效果:

鲁迅:我不见他,已是三十多年;今天见了,精神分外爽快。才知道以前的三十多年,全是发昏;然而须十分小心。不然,那赵家的狗,何以看我两眼呢?

嵌套引用

超链接

支持类HTML方式:
<a href="http_url" alt="提示文本">超链接1</a>
效果:超链接1

[超链接2](http_url "alt 提示")
效果:超链接2

表格

设置表格内容对齐

MD语法:

| 左对齐标题 | 右对齐标题 | 居中对齐标题 | 居中对齐标题
| :------| ------: | :------: | --
| 短文本 | 中等长度文本 | 稍微长一点的文本 | 稍微长一点的文本
| 稍微长一点的文本 | 短文本 | 中等文本 | 中等文本

效果

左对齐标题右对齐标题居中对齐标题居中对齐标题
短文本中等长度文本稍微长一点的文本稍微长一点的文本
稍微长一点的文本短文本中等文本中等文本

也就是说:两个横杠--即可代表一个列,默认是居中,故两侧的冒号:可以省略。冒号:加在左边,即表示左对齐;冒号加在右边,即表示右对齐。

设置表格内容换行

MD语法:

标题 | 我想要这个注释居中
:--|--
我想要这个标题左对齐 | 第一行<br>第二行

效果

标题我想要这个注释居中
我想要这个标题左对齐第一行
第二行

结论:<br>可以实现换行

设置表格内容合并

MD语法:

标题左对齐 | 我想要这个右对齐
:--|--:
合并的标题|第一行<hr>第二行

效果

标题左对齐我想要这个居中对齐我想要这个右对齐
合并的标题第一行第一列
第二行第一列
第一行第二列
有很多很多很多很多很多很多很多很多很多很多很多很多很多很多很多很多很多很多很多很多很多第二行第二列

结论:<hr>可以实现其他列合并

但是比较丑!尤其是在表格内容长度不一的情况下。

表格里含有特殊字符

表格以|作为分隔符,那如果我想要在表格单元格里面添加|,如何实现?加上转义字符\即可。其他特殊字符也是一样的处理方式。

MD语法:

模式|解释
--|--
`p1\|p2`|交替匹配任意 p1 或 p2

效果

模式解释
p1|p2交替匹配任意 p1 或 p2

公式

Markdown Preview Enhanced使用KaTeX或MathJax来渲染数学表达式。KaTeX比MathJax性能更好,但却缺少很多MathJax拥有的特性。

两种公式编写方式:

  • $...$\(...\)中的数学表达式将会在行内显示
  • $$...$$\[...\]或```math中的数学表达式将会在块内显示

常用符号

下标:$a_{11}$,呈现效果: a 11 a_{11} a11
上标:$a^{11}$,呈现效果: a 12 a^{12} a12
分数:$\frac{a}{b}$,呈现效果 a b \frac{a}{b} ba
向量:$\vec{a}$,呈现效果: a ⃗ \vec{a} a
累加:$\sum$,呈现效果: ∑ \sum
累积:$\prod$,呈现效果: ∏ \prod
无穷大:$\infty$,呈现效果: ∞ \infty
1重积分:$\int\frac{dx}{1+x^2}=arctanx+C$,呈现效果: ∫ d x 1 + x 2 = a r c t a n x + C \int\frac{dx}{1+x^2}=arctanx+C 1+x2dx=arctanx+C
2重积分:$\iint$,呈现效果: ∬ \iint
3重积分:$\iiint$,呈现效果: ∭ \iiint

微分:

希腊字母

字母markdown语法呈现效果
alpha$\alpha$ α \alpha α
beta$\beta$ β \beta β
gamma$\gamma$ γ \gamma γ
delta$\delta$ δ \delta δ
epsilon$\epsilon$ ϵ \epsilon ϵ
zeta$\zeta$ ζ \zeta ζ
eta$\eta$ η \eta η
theta$\theta$ θ \theta θ
lambda$\lambda$ λ \lambda λ
pi$\pi$ π \pi π
omega$\omega$ ω \omega ω
psi$\psi$ ψ \psi ψ
sigma$\sigma$ σ \sigma σ
rho$\rho$ ρ \rho ρ
xi$\xi$ ξ \xi ξ
tau$\tau$ τ \tau τ
kappa$\kappa$ κ \kappa κ
mu$\mu$ μ \mu μ
nu$\nu$ ν \nu ν
chi$\chi$ χ \chi χ
upsilon$\upsilon$ υ \upsilon υ

实战

实例语法:


呈现效果:
( 1 + x ) a (1+x)^a (1+x)a

方程组

起始、结束处以{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}
$$

呈现效果:
{ a 1 x + b 1 y + c 1 z = d 1 a 2 x + b 2 y + c 2 z = d 2 a 3 x + b 3 y + c 3 z = d 3 \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} a1x+b1y+c1z=d1a2x+b2y+c2z=d2a3x+b3y+c3z=d3

矩阵

基础

矩阵MD语法规则:

  • 数学公式(包括矩阵)放在$$之间
  • 起始标记\begin{matrix},结束标记\end{matrix}
  • 行尾标记\\,行间元素用&分隔

示例语法:

$$\begin{matrix}
0.8&0.2\\
0.4&0.6\\
\end{matrix}$$

呈现效果:
0.8 0.2 0.4 0.6 \begin{matrix} 0.8&0.2\\ 0.4&0.6\\ \end{matrix} 0.80.40.20.6

矩阵边框

上面的预览没有边框。在起始、结束标记用下列词替换matrix

  • pmatrix:小括号边框
  • bmatrix:中括号边框
  • Bmatrix:大括号边框
  • vmatrix:单竖线边框
  • Vmatrix:双竖线边框

呈现效果:
[ 0.8 0.2 0.4 0.6 ] \begin{bmatrix} 0.8&0.2\\ 0.4&0.6\\ \end{bmatrix} [0.80.40.20.6]

省略元素

当矩阵元素较多且呈现一定规律时会使用省略号:

  • 横省略号:\cdots
  • 竖省略号:\vdots
  • 斜省略号:\ddots

示例:

$$A=\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}$$

呈现效果:
A = { a 11 a 12 ⋯ a 1 n a 21 a 22 ⋯ a 2 n ⋮ ⋮ ⋱ ⋮ a m 1 a m 2 ⋯ a m n } A=\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} A= a11a21am1a12a22am2a1na2namn

阵列

规则:

  • 包含:起始、结束处以{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}$$

呈现效果:
↓ a b c R 1 c b a R 2 b c c \begin{array}{c|lll} {↓}&{a}&{b}&{c}\\ \hline {R_1}&{c}&{b}&{a}\\ {R_2}&{b}&{c}&{c}\\ \end{array} R1R2acbbbccac

流程图

横向流程图

复制下面代码时去掉【晕】字,下同:

```mermaid
graph LR
A[方形] -->B(圆角)
B --> C{条件a}
C -->|a=1| D[结果1]
C -->|a=2| E[结果2]
F[横向流程图]
晕```

呈现效果:

a=1
a=2
方形
圆角
条件a
结果1
结果2
横向流程图

竖向流程图

```mermaid
graph TD
A[方形] --> B(圆角)
B --> C{条件a}
C --> |a=1| D[结果1]
C --> |a=2| E[结果2]
F[竖向流程图]
晕```

呈现效果:

a=1
a=2
方形
圆角
条件a
结果1
结果2
竖向流程图

标准流程图

示例:

```mermaid
flowchat
st=>start: 开始框
op=>operation: 处理框
cond=>condition: 判断框(是或否?)
sub1=>subroutine: 子流程
io=>inputoutput: 输入输出框
e=>end: 结束框
st->op->cond
cond(yes)->io->e
cond(no)->sub1(right)->op
晕```

呈现效果:

Created with Raphaël 2.3.0 开始框 处理框 判断框(是或否?) 输入输出框 结束框 子流程 yes no

UML时序图

示例:

```mermaid
sequenceDiagram
对象A->>对象B: 对象B你好吗?(请求)
Note right of 对象B: 对象B的描述
Note left of 对象A: 对象A的描述(提示)
对象B-->>对象A: 我很好(响应)
对象A->>对象B: 你真的好吗?
晕```

呈现效果:

对象A 对象B 对象B你好吗?(请求) 对象B的描述 对象A的描述(提示) 我很好(响应) 你真的好吗? 对象A 对象B 标题:复杂UML时序图

稍微复杂一点的时序图示例:

```mermaid
sequenceDiagram
Title: 标题:复杂UML时序图
对象A->>对象B: 对象B你好吗?(请求)
Note right of 对象B: 对象B的描述
Note left of 对象A: 对象A的描述(提示)
对象B-->>对象A: 我很好(响应)
对象B->>小三: 你好吗
小三-->>对象A: 对象B找我了
对象A->>对象B: 你真的好吗?
Note over 小三,对象B: 我们是朋友
participant C
Note right of C: 没人陪我玩
晕```

呈现效果:

对象A 对象B 小三 C 对象B你好吗?(请求) 对象B的描述 对象A的描述(提示) 我很好(响应) 你好吗 对象B找我了 你真的好吗? 我们是朋友 没人陪我玩 对象A 对象B 小三 C 标题:复杂UML时序图

甘特图

示例:

```mermaid
ganttdateFormat  YYYY-MM-DDtitle 软件开发甘特图示例section 设计需求                      :done,    des1, 2023-11-06,2023-11-08原型                      :active,  des2, 2023-11-09, 3dUI设计                     :         des3, after des2, 5d未来任务                     :         des4, after des3, 5dsection 开发学习准备理解需求                      :crit, done, 2023-11-06,24h设计框架                             :crit, done, after des2, 2d开发                                 :crit, active, 3d未来任务                              :crit, 5d耍                                   :2dsection 测试功能测试                              :active, a1, after des3, 3d压力测试                               :after a1  , 20h测试报告                               : 48h
晕```

呈现效果:

2023-11-07 2023-11-09 2023-11-11 2023-11-13 2023-11-15 2023-11-17 2023-11-19 2023-11-21 2023-11-23 需求 学习准备理解需求 原型 UI设计 设计框架 开发 未来任务 未来任务 功能测试 压力测试 测试报告 设计 开发 测试 软件开发甘特图示例

参考

  • KaTeX-GitHub
  • KaTeX
  • MathJax-GitHub
  • MathJax

这篇关于MarkDown基础及表格、KaTeX公式、矩阵、流程图、UML图、甘特图语法的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/380807

相关文章

Python基础文件操作方法超详细讲解(详解版)

《Python基础文件操作方法超详细讲解(详解版)》文件就是操作系统为用户或应用程序提供的一个读写硬盘的虚拟单位,文件的核心操作就是读和写,:本文主要介绍Python基础文件操作方法超详细讲解的相... 目录一、文件操作1. 文件打开与关闭1.1 打开文件1.2 关闭文件2. 访问模式及说明二、文件读写1.

Python将博客内容html导出为Markdown格式

《Python将博客内容html导出为Markdown格式》Python将博客内容html导出为Markdown格式,通过博客url地址抓取文章,分析并提取出文章标题和内容,将内容构建成html,再转... 目录一、为什么要搞?二、准备如何搞?三、说搞咱就搞!抓取文章提取内容构建html转存markdown

C#基础之委托详解(Delegate)

《C#基础之委托详解(Delegate)》:本文主要介绍C#基础之委托(Delegate),具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1. 委托定义2. 委托实例化3. 多播委托(Multicast Delegates)4. 委托的用途事件处理回调函数LINQ

C++ 中的 if-constexpr语法和作用

《C++中的if-constexpr语法和作用》if-constexpr语法是C++17引入的新语法特性,也被称为常量if表达式或静态if(staticif),:本文主要介绍C++中的if-c... 目录1 if-constexpr 语法1.1 基本语法1.2 扩展说明1.2.1 条件表达式1.2.2 fa

利用Python开发Markdown表格结构转换为Excel工具

《利用Python开发Markdown表格结构转换为Excel工具》在数据管理和文档编写过程中,我们经常使用Markdown来记录表格数据,但它没有Excel使用方便,所以本文将使用Python编写一... 目录1.完整代码2. 项目概述3. 代码解析3.1 依赖库3.2 GUI 设计3.3 解析 Mark

使用Python和python-pptx构建Markdown到PowerPoint转换器

《使用Python和python-pptx构建Markdown到PowerPoint转换器》在这篇博客中,我们将深入分析一个使用Python开发的应用程序,该程序可以将Markdown文件转换为Pow... 目录引言应用概述代码结构与分析1. 类定义与初始化2. 事件处理3. Markdown 处理4. 转

Java利用poi实现word表格转excel

《Java利用poi实现word表格转excel》这篇文章主要为大家详细介绍了Java如何利用poi实现word表格转excel,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 一、每行对象类需要针对不同的表格进行对应的创建。package org.example.wordToEx

利用Python实现添加或读取Excel公式

《利用Python实现添加或读取Excel公式》Excel公式是数据处理的核心工具,从简单的加减运算到复杂的逻辑判断,掌握基础语法是高效工作的起点,下面我们就来看看如何使用Python进行Excel公... 目录python Excel 库安装Python 在 Excel 中添加公式/函数Python 读取

Java实现将Markdown转换为纯文本

《Java实现将Markdown转换为纯文本》这篇文章主要为大家详细介绍了两种在Java中实现Markdown转纯文本的主流方法,文中的示例代码讲解详细,大家可以根据需求选择适合的方案... 目录方法一:使用正则表达式(轻量级方案)方法二:使用 Flexmark-Java 库(专业方案)1. 添加依赖(Ma

使用EasyExcel实现简单的Excel表格解析操作

《使用EasyExcel实现简单的Excel表格解析操作》:本文主要介绍如何使用EasyExcel完成简单的表格解析操作,同时实现了大量数据情况下数据的分次批量入库,并记录每条数据入库的状态,感兴... 目录前言固定模板及表数据格式的解析实现Excel模板内容对应的实体类实现AnalysisEventLis