Mermaid 语法教程

Mermaid 是一种使用 Markdown 风格 语法来绘制流程图、时序图、甘特图等可视化图表的工具。它适用于技术文档、Wiki、开发文档等场景。


1. 安装与使用

1.1 在线使用

  • 直接访问 Mermaid Live Editor
  • 在 GitHub、Notion、Typora 等支持 Mermaid 的平台上直接书写。

1.2 本地安装

如果要在本地 Markdown 工具或 Web 项目中使用 Mermaid,可以安装它的 npm 包:

npm install -g @mermaid-js/mermaid-cli  # 安装 Mermaid CLI

在 HTML 文件中使用

<script type="module">
  import mermaid from 'https://cdn.jsdelivr.net/npm/mermaid@10/dist/mermaid.esm.min.mjs';
  mermaid.initialize({ startOnLoad: true });
</script>

在 Node.js 环境下使用 CLI 生成 SVG

mmdc -i input.mmd -o output.svg

2. 基础语法

2.1 流程图(Flowchart)

示例:

开始
条件判断
执行操作
退出

语法解析:

  • flowchart TD:从上到下绘制(LR 为从左到右)。
  • A[文本]:矩形框,表示开始或结束。
  • B{条件}:菱形,表示判断条件。
  • A --> B:箭头,表示流程。
  • B -->|是| C:带标签的分支。
  • C --> D:流程的连接。
2.1.1 额外形状
形状语法
圆角矩形A((文本))
平行四边形(输入/输出)B[/文本/]
菱形(判断)C{条件}

2.2 时序图(Sequence Diagram)

示例:

用户 服务器 发送请求 返回响应 用户 服务器

语法解析:

  • participant 定义参与者。
  • A->>B: 表示 A 发送消息给 B。
  • B-->>A: 表示 B 回复 A。
  • Note right of B: 这是一条注释 为右侧注释。

2.3 甘特图(Gantt Chart)

示例:

2024-03-01 2024-03-03 2024-03-05 2024-03-07 2024-03-09 2024-03-11 2024-03-13 2024-03-15 需求分析 设计 开发 计划阶段 项目进度

语法解析:

  • title:甘特图标题。
  • section:定义阶段。
  • 任务名称 : 状态, 开始时间, 持续天数
  • done:已完成,active:进行中。

2.4 类图(Class Diagram)

示例:

Animal
+String name
+makeSound()
Dog
+String breed
+bark()

语法解析:

  • classDiagram 定义类图。
  • class 类名 {} 定义类和属性、方法。
  • <|-- 表示继承关系。
  • + 号表示公有属性/方法。

3. 进阶用法

3.1 状态图(State Diagram)

示例:

开始
运行

语法解析:

  • [ * ] 代表起点和终点。
  • --> 定义状态转换。

3.2 饼图(Pie Chart)

示例:

65% 15% 10% 10% 浏览器市场份额 Chrome Edge Firefox Safari

语法解析:

  • title 设置标题。
  • 每个数据项格式为:"名称" : 数值

3.3 实体关系图(ER Diagram)

示例:

CUSTOMER string name int id ORDER LINE-ITEM places contains

语法解析:

  • ||--o{ 表示一对多关系。
  • ||--|{ 表示多对多关系。
  • 类 {} 内部可以定义字段。

4. 总结

图表类型关键字作用
流程图flowchart展示流程逻辑
时序图sequenceDiagram显示消息交互顺序
甘特图gantt项目进度管理
类图classDiagram设计类结构
状态图stateDiagram展示状态转换
饼图pie显示占比
ER 图erDiagram数据库设计

Mermaid 提供了一种直观、简单的方式来绘制图表,使技术文档更加清晰直观!🎯

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值