mermaid程序化绘图——基础篇

本文聚焦于如何在Markdown文档中利用Mermaid语法高效绘制图表,包括流程图与flowchart示例,旨在简化程序员的绘图流程,提高工作效率。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

简介

程序员都喜欢任何工作都与代码脚本搭上关系,比如绘图,不喜欢诸如ppt,visio等大型绘图软件复杂的操作,可移植性和可分享性(兼容性)都不尽人意,要想绘出漂亮的图表需要一定的门槛。
因此,一切以简洁为美,程序化绘图是一个很好的解决方案, 本文介绍使用markdown进行mermaid绘图的基础篇介绍。

环境

vscode+markdown+mermaid(vscode安装markdown和mermaid preview插件)

流程图

声明为graphflowchart,区别是graph有棱角,而flowchart比较圆滑。

graph/flowchart TD/TB 代表从上到下绘制 top-down/top-bottom
graph/flowchart BT 代表从下到上绘制 bottom-top
graph/flowchart LR 代表从上到下绘制 left-right
graph/flowchart RL 代表从下到上绘制 right-left

graph示例

"```mermaid
graph TD
    node1((start)) --> node2[mid1]
    node2 ==> node3{yes or no?}
    node3 --yes--> node4(it's true)
    node3  --> | no |node5(it's false)
    node4 -.-> node6((end))
    node5 -.-> node6
```“(去除引号使用)
yes
no
start
mid1
yes or no?
it's true
it's false
end

flowchart示例

"```mermaid
flowchart TD
    node1((start)) --> node2[mid1]
    node2 ==> node3{yes or no?}
    node3 --yes--> node4(it's true)
    node3  --> | no |node5(it's false)
    node4 -.-> node6((end))
    node5 -.-> node6
```“(去除引号使用)
yes
no
start
mid1
yes or no?
it's true
it's false
end

常用线条和形状可对比代码了解,其实形状和线条的表示是可见即可得,如下:

  • [ ]代表矩形
  • { }代表菱形
  • ( )代表圆润矩形
  • (( ))代表圆形
  • –>代表实线箭头
  • -.->代表虚线箭头
  • ==>代表粗实线箭头
(( ))
( )
[ ]
{ }
[[ ]]
> ]

时序图

声明为sequenceDiagram

"```mermaid
sequenceDiagram
    participant client
    note right of server: tcp三次握手
    client ->> server: syn
    server -->> client: syn+ack
    client ->> server: ack

    note right of server: tcp四次挥手
    client ->> server: fin
    server -->> client: ack
    loop
       server -->> server: server handle left data 
    end
    server -->> client: fin
    client ->> server: ack
```"(去除引号使用)
client server tcp三次握手 syn syn+ack ack tcp四次挥手 fin ack server handle left data loop fin ack client server
  • participant xxx 参与者,前向声明,代表出现顺序
  • note right of xxx 注释
  • loop 循环
  • ->>实线箭头
  • –>>虚线箭头
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值