Mermaid语法必备

Mermaid 是一种基于文本的图表生成工具,通过类 Markdown 语法实现可视化图表绘制。其语法简洁、支持多种图表类型,且天然适合代码管理和版本控制。以下是 Mermaid 的核心语法详解:


一、基础语法结构

1. 图表类型声明

所有图表以特定关键词开头,定义图表类型和方向:

  • 流程图graph TD(上下布局)或 flowchart LR(左右布局)
  • 时序图sequenceDiagram
  • 甘特图gantt
  • 类图classDiagram
  • 状态图stateDiagram
2. 通用语法规则
  • 注释:以 %% 开头,如 %% 这是注释
  • 节点定义节点ID[显示文本]节点ID{条件文本}(菱形节点)
  • 连线语法节点A --> 节点B(箭头)、节点A --- 节点B(无箭头)

二、核心图表类型详解

1. 流程图(Flowchart)

应用场景:业务流程、算法逻辑、用户交互流程
语法要点

开始
条件判断
操作1
操作2
结束
  • 节点形状
    • []:矩形(默认)
    • {}:菱形(条件判断)
    • (()):圆形(开始/结束)
  • 子图:用 subgraph 定义逻辑分组
用户模块
权限校验
登录
主页
2. 时序图(Sequence Diagram)

应用场景:系统交互、API 调用时序
语法要点

用户服务端请求数据返回结果用户服务端
  • 参与者定义participant 别名 as 显示名
  • 消息类型
    • ->>:同步消息
    • -->>:异步响应
    • -x:异步请求(带叉箭头)
  • 激活框:用 +- 标记处理时段
sequenceDiagram
  A->>B+: 请求
  B-->>A-: 响应
3. 甘特图(Gantt Chart)

应用场景:项目管理、任务进度跟踪
语法要点

2024-03-012024-03-032024-03-052024-03-072024-03-092024-03-112024-03-132024-03-152024-03-172024-03-19需求分析 原型设计 前端开发 设计开发项目计划
  • 时间格式dateFormat 定义日期格式(如 YYYY-MM-DD
  • 任务依赖after 表示任务顺序关系
  • 关键路径:crit 标记关键任务
4. 类图(Class Diagram)

应用场景:面向对象系统设计
语法要点

拥有
1
*
用户
+username : String
+login()
订单
  • 可见性标记+(public)、-(private)、#(protected)
  • 类关系
    • 继承:--|>
    • 组合:--*
    • 聚合:--o
5. 状态图(State Diagram)

应用场景:状态机建模、生命周期管理
语法要点

开始
成功
错误
待处理
处理中
已完成
已失败

三、高级功能与优化

  1. 样式自定义
    通过 CSS 类修改颜色、边框等属性:

    A
    B
  2. 动态交互(HTML环境)
    添加点击事件(需配合 JavaScript):

    <script>
      mermaid.initialize({ securityLevel: 'loose' });
    </script>
    
  3. 复杂布局技巧

    • 隐藏节点:用 A[ ] 创建空节点调整布局
    • 长文本换行:用 <br> 标签实现多行显示

四、工具与资源推荐

  1. 在线编辑器:Mermaid Live Editor(https://mermaid.live)
  2. IDE 插件:VS Code 的 Mermaid 插件支持实时预览
  3. 智能生成工具:DeepSeek、Kimi 可通过自然语言生成 Mermaid 代码
  4. 官方文档:Mermaid 中文网(https://mermaid.nodejs.cn)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值