这是工具系列的第四篇,本来最近没有想再分享这个系列,不过最近朋友给我推荐了一个绘制流程图的神器,忍不住推荐给大家。
绘制程序流程图、时序图、甘特图一直是我比较头疼的问题,一直使用viso,用着一直不是很顺畅:
-
默认框图不好看,每次需要手动去调颜色、字体等(应该是我不太会用)
-
需要仔细拖动框图对齐,虽然后自动对齐,不过还是很麻烦
-
添加到markdown的笔记中很麻烦,需要保存图片再加载
-
ubuntu没有找到比visio好的绘图软件,只能用双系统解决
-
没办法源码管理,只能作为二进制文件管理
好吧,虽然体验不好,不过还是坚持用了好多年,直到朋友给我推荐了markdown的插件mermaid,还要啥visio呀。
吐槽了很多,开始我们的分享,作为markdown的插件,不是所有的md编辑器都支持的,所幸我们有宇宙第一文本编辑器typora,它原生支持mermaid。
用法很简单,只需要插入一个代码块,将语法设置为mermaid,typora就会自动进行渲染。
废话不多说,我们看看实际的效果吧,这里我直接引用了mermaid官方教程中的demo,给大家看看效果,是不是大家想要的,觉得能满足需求就继续学习它。
由于微信公众号不支持插入这个渲染,所以我直接将效果保存为图片插入,大家可以从mermaid官网复制demo在typora上看效果
https://mermaid-js.github.io/mermaid/#/
以下是绘制上述图表的代码:
流程图
```mermaid
graph TD;
A-->B;
A-->C;
B-->D;
C-->D;
C-->E;
```
时序图
```mermaid
sequenceDiagram
participant Alice
participant Bob
Alice->>John: Hello John, how are you?
loop Healthcheck
John->>John: Fight against hypochondria
end
Note right of John: Rational thoughts <br/>prevail!
John-->>Alice: Great!
John->>Bob: How about you?
Bob-->>John: Jolly good!
```
甘特图
```mermaid
gantt
dateFormat YYYY-MM-DD
title Adding GANTT diagram to mermaid
excludes weekdays 2014-01-10
section A section
Completed task :done, des1, 2014-01-06,2014-01-08
Active task :active, des2, 2014-01-09, 3d
Future task : des3, after des2, 5d
Future task2 : des4, after des3, 5d
```
类图
```mermaid
classDiagram
Class01 <|-- AveryLongClass : Cool
Class03 *-- Class04
Class05 o-- Class06
Class07 .. Class08
Class09 --> C2 : Where am i?
Class09 --* C3
Class09 --|> Class07
Class07 : equals()
Class07 : Object[] elementData
Class01 : size()
Class01 : int chimp
Class01 : int gorilla
Class08 <--> C2: Cool label
```
饼状图
```mermaid
pie
title Key elements in Product X
"Calcium" : 42.96
"Potassium" : 50.05
"Magnesium" : 10.01
"Iron" : 5
```
语法很简单吧,很容易上手。
由于微信公众号不支持插入这个渲染,所以我直接将效果保存为图片插入,大家可以从mermaid官网复制demo在typora上看效果 https://mermaid-js.github.io/mermaid/#/
往期分享:
PX4-2-系统架构浅析_AcmeUav的博客-CSDN博客
工欲善其事-3-整理技术笔记(gitbook)_AcmeUav的博客-CSDN博客
使用3D地面站(AcmeGCS)的编队飞行_AcmeUav的博客-CSDN博客
这个博客转载自我个人的微信公众号,这里会不定期更新一些我整理的无人机相关知识和个人设计,欢迎添加关注。