使用vscode画图表。
Mermaid
一个曾经获得过The most exciting use of technology大奖的优秀项目。
vscode安装插件:Markdown Preview Mermaid Support
Mermaid是一种简单的类似Markdown的脚本语言,通过JavaScript编程语言,将文本转换为图片。
Mermaid 支持绘制非常多种类的图,常见的有时序图、流程图、类图、甘特图等等。
除了再vscode中使用,还可以在线使用:
1、https://codepen.io/tdkn/pen/vZxQzd
2、https://mermaidjs.github.io/mermaid-live-editor/
流程图
样式流程图, 基本语法:
- graph 指定流程图方向:graph LR 横向,graph TD 纵向
元素的形状定义: - id[描述] 以直角矩形绘制
- id(描述) 以圆角矩形绘制
- id{描述} 以菱形绘制
- id>描述] 以不对称矩形绘制
- id((描述)) 以圆形绘制
- 线条定义:
- A–>B 带箭头指向
- A—B 不带箭头连接
- A-.-B 虚线连接
- A-.->B 虚线指向
- A==>B 加粗箭头指向
- A–描述—B 不带箭头指向并在线段中间添加描述
- A–描述–>B 带描述的箭头指向
- A-.描述.->B 带描述的虚线连指向
- A==描述==>B 带描述的加粗箭头指向
1 | flowchart TD |
另一个使用:graph
1 | graph TD |
使用sequenceDiagram画标准流程图(该方法在vscode中待测试)
1 | tag=type: content:>url |
- tag 节点名称
- type 节点类型
- start 开始节点
- end 结束节点
- operation 操作节点
- subroutine 子程序节点
- condition 条件节点
- inputoutput 输入或产出节点
- content 节点描述
- url 超连接,与文本绑定
- 用 -> 来关两个节点,如果是 condition 节点将会有 yes 和 no 两个分支。
1 | sequenceDiagram |
时序图
在开头使用关键字sequenceDiagram指明,基本语法:
- Title:标题 :指定时序图的标题
- Note direction of 对象:描述 : 在对象的某一侧添加描述,direction 可以为 right/left/over , 对象 可以是多个对象,以 , 作为分隔符
- participant 对象 :创建一个对象
- loop…end :创建一个循环体
- A->B: 描述
绘制A与B之间的对话:
- -> 表示实线(无箭头)
- –> 表示实心箭头
- ->> 表示虚线(无箭头)
- –>> 表示虚线箭头
1 | sequenceDiagram |
甘特图
在开头使用关键字gantt指明
- deteFormat 格式 指明日期的显示格式
- title 标题 设置图标的标题
- section 描述 定义纵向上的一个环节
- 定义步骤:每个步骤有两种状态done (已完成)/ active(执行中)
- 描述: 状态,id,开始日期,结束日期/持续时间
- 描述: 状态,id,after id2,持续时间
- crit :可用于标记该步骤需要被修正,将高亮显示
- 如果不指定具体的开始时间或在某个步骤之后,将默认依次顺序排列
1 | gantt |