免费注册
流程类
图形化表达方式
脑图类
结构化表达方式
笔记类
高效化表达方式
实用工具
实用工具
业务与管理领域
软件工程与系统设计
UML
数据分析与研究
工程与技术设计
数据库与信息系统
树形图
括号图
思维笔记

Mermaid在线编辑器 - Mermaid语法一键生成流程图、时序图、类图等21种图形

蛐蛐 2026-09-29
12
ProcessOn,立刻提升你的工作效率
首页 知识社区 Mermaid在线编辑器 - Mermaid语法一键生成流程图、时序图、类图等21种图形
目录
什么是Mermaid? Mermaid支持哪些图表? 不会Mermaid语法怎么办? Mermaid在线编辑器有哪些功能? 常见问题

Mermaid是一种基于文本语法生成图表的工具。通过编写简单的Mermaid代码,可以生成流程图、时序图、类图、状态图、ER图、甘特图、思维导图、架构图等多种图表。

与传统的拖拽式绘图工具不同,Mermaid主要通过代码描述图表中的节点、关系、时间顺序和数据结构。修改代码后,图表可以自动重新生成,因此特别适合技术文档、产品设计、项目管理、软件开发和知识整理等场景。

本文介绍Mermaid基本语法,并整理Mermaid编辑器支持渲染的图表类型、声明语法、代码示例和使用场景。如果希望直接在线编写和预览Mermaid代码,可以免费体验ProcessOn Mermaid在线编辑器。

什么是Mermaid?

Mermaid是一种使用文本语法生成图表的工具。例如,下面的代码可以生成一个简单的Mermaid流程图:

flowchart TD

    A[开始] --> B[输入信息]

    B --> C{是否完成}

    C -->|是| D[结束]

    C -->|否| B

渲染效果如下:

其中:flowchart TD 用于声明创建一个从上到下排列的流程图。

Mermaid的运行逻辑可以概括为:

编写Mermaid代码 → 解析代码 → 渲染图表 → 修改代码 → 图表实时更新

因此,学习Mermaid的关键之一,就是了解不同图表对应的声明语法。

Mermaid支持哪些图表?

不同类型的图表使用不同的 Mermaid 语法,目前常见的 Mermaid 图形包括:

图表类型Mermaid声明语法常见用途
流程图flowchart业务流程、算法、工作流程
时序图sequenceDiagram系统交互、API调用
类图classDiagram软件结构、面向对象建模
状态图stateDiagram-v2状态转换、状态机
ER图erDiagram数据库实体关系
甘特图gantt项目计划、任务进度
用户旅程图journey用户体验、客户旅程
思维导图mindmap知识整理、头脑风暴
时间轴timeline时间线、历史事件
饼图pie比例、构成分析
象限图quadrantChart分类、优先级、定位分析
Git图gitGraphGit分支、提交、合并
桑基图sankey-beta数据、资源、流量流向
XY图xychart-beta数据趋势、数值比较
雷达图radar多维指标比较
C4图C4Context 等软件架构建模
架构图architecture-beta系统、服务和资源架构
看板图kanban任务、工作状态管理
框图block-beta模块、结构和系统关系
数据包图packet-beta网络数据包结构
需求图requirementDiagram需求分析和需求关系

不同Mermaid编辑器版本对图表的语法和功能支持可能有所变化,实际使用时应以编辑器支持的语法为准。

Mermaid流程图

基础语法

Mermaid 使用 flowchart 声明创建流程图。最简单的写法:

flowchart TD

    A[开始] --> B[处理]

    B --> C[结束]

渲染效果

其中:

  • flowchart:声明创建流程图
  • TD:从上到下排列
  • A[开始]:创建一个节点
  • -->:创建带箭头的连线

Mermaid 流程图还可以使用 LR(从左到右)、RL(从右到左)、BT(从下而上) 等方向设置。例如:

flowchart LR

    A[开始] --> B[处理] --> C[结束]

表示流程图从左到右排列。

常用语法

语法图形意义
(text)圆角矩形表示流程的开始、结束或一般操作
[text]矩形表示具体步骤、任务或处理过程
{text}菱形表示判断、条件分支
((text))圆形表示连接点或事件
[[text]]双矩形表示调用子流程、子模块
[(text)]圆柱表示数据库节点
>text]不对称图形表示输入/输出
[/text/]平行四边形表示输入或输出数据
-->箭头表示流程进行方向
---无箭头连线表示关联关系
-.->虚线箭头表示可选流程、引用关系
==>粗箭头表示重点流程或强关联

Mermaid生成流程图详细语法请访问以下页面查看:https://www.processon.com/mermaid/flowchart

流程图适合用于业务流程、工作流程、算法流程、系统流程和决策流程等场景,免费体验Mermaid流程图在线编辑器。

Mermaid时序图

基础语法

Mermaid 使用 sequenceDiagram 声明创建时序图。最简单的示例:

sequenceDiagram

    Alice->>John: Hello John

    John-->>Alice: Hello Alice

渲染效果

其中:

  • sequenceDiagram:表示创建一个 Mermaid 时序图
  • ->>:实线箭头,表示异步消息调用
  • -->>:虚线箭头,表示异步响应或返回消息

常用语法

语法图形意义
sequenceDiagram时序图创建一个时序图
A->B: message实线表示同步消息调用或普通交互
A-->B: message虚线表示返回消息或弱关联交互
A->>B: message实线箭头表示异步消息调用
A-->>B: message虚线箭头表示异步响应或返回消息
participant A参与者定义交互中的对象、角色或系统
actor A角色表示用户、外部系统等主动参与者
activate A激活框表示对象开始处理请求
deactivate A结束激活表示对象完成当前处理
loop text循环框表示重复执行的交互过程
alt text条件分支表示不同条件下的交互路径
opt text可选流程表示可能执行的交互
par text并行框表示多个操作同时执行

Mermaid生成时序图详细语法请访问以下页面查看:https://www.processon.com/mermaid/sequence-diagram

时序图适合描述用户与系统、系统与系统、服务与服务之间按照时间顺序发生的交互,免费体验Mermaid时序图在线编辑器。

Mermaid类图

基础语法

Mermaid 使用 classDiagram 声明创建类图。

classDiagram

    Animal <|-- Duck

    Animal <|-- Fish

    class Animal {

        +String name

        +eat()

    }

    class Duck {

        +swim()

    }

渲染效果

其中:

  • classDiagram:表示创建 Mermaid类图
  • <|--:表示继承关系
  • +String name:表示公开的属性或方法

常用语法

语法图形意义
classDiagram类图创建一个类图
class ClassName类定义一个类对象
ClassName : attribute属性表示类中的成员变量
ClassName : method()方法定义类方法
<|--空心三角+实线表示继承关系
<|..空心三角+虚线表示实现关系
*--实心菱形+实线表示组合关系
o--空心菱形+实线表示聚合关系
-->实线箭头表示关联关系
..>虚线箭头表示依赖关系
--实线表示普通连接关系
+attribute加号表示公开的属性或方法
-attribute减号表示私有的属性或方法

类成员前面的 +、-、# 等符号可以表示不同的可见性。

Mermaid生成类图详细语法请访问以下页面查看:https://www.processon.com/mermaid/class-diagram

类图适合软件设计、面向对象建模、程序结构分析等场景,免费体验Mermaid类图在线编辑器。

Mermaid状态图

基础语法

Mermaid 使用 stateDiagram-v2 声明创建状态图。

stateDiagram-v2

    [*] --> 待支付

    待支付 --> 已支付

    已支付 --> 已发货

    已发货 --> 已完成

    已完成 --> [*]

渲染效果

其中:

  • stateDiagram-v2:表示创建 Mermaid 状态图
  • [*] -->:表示进入第一个状态
  • -->:表示状态迁移
  • --> [*]:表示状态流程结束

常用语法

语法图形意义
stateDiagram-v2状态图创建一个状态图
state StateName圆角矩形定义基础状态节点
state StateName : text带文本圆角矩形为状态附加描述文本
[*]实心小圆点或双层圆环表示状态开始或结束
[*] --> StateName起始箭头表示进入第一个状态
StateName --> [*]结束箭头表示状态流程结束
A --> B实线箭头表示状态迁移
A --> B: event含标注的实线箭头含触发事件的状态迁移
state StateName { ... }嵌套圆角矩形定义复合状态
state Node <<choice>>菱形分支判断选择节点
state Fork <<fork>>粗横向分隔线表示并行流程开始
state Join <<join>>粗横向分隔线表示并行流程结束合并

Mermaid生成状态图详细语法请访问以下页面查看:https://www.processon.com/mermaid/state-diagram

状态图适合表示订单状态、工作流状态、用户状态、系统状态以及状态机等,免费体验Mermaid状态图在线编辑器。

Mermaid ER图

基础语法

Mermaid 使用 erDiagram 声明创建实体关系图,也就是 ER 图。

erDiagram

    USER ||--o{ ORDER : places

    ORDER ||--|{ PRODUCT : contains

渲染效果

其中:

  • erDiagram:表示创建 Mermaid ER 图
  • ||--o{:一对多连接,表示一个实体对应多个实体,可以为空
  • ||--|{:一对多连接,表示一个实体对应多个实体,最少1个

常用语法

语法图形意义
erDiagramER图创建一个ER图
ENTITY { }矩形定义一个实体
type field属性标记定义实体属性
type field PK主键定义实体主键
type field FK外键定义实体外键
type field UK唯一密钥定义唯一约束字段
||一个必须且仅一个
o|零或一零或一
|{一或多个最少一个
o{零或一或多个零个或多个

Mermaid生成ER图详细语法请访问以下页面查看:https://www.processon.com/mermaid/er-diagram

ER图可以表示实体、属性以及实体之间的关系,常用于数据库设计,免费体验Mermaid ER图在线编辑器。

Mermaid思维导图语法

基础语法

Mermaid 使用 mindmap 声明创建思维导图。

mindmap

  root((Mermaid))

    流程图

    时序图

    类图

    甘特图

    思维导图

渲染效果

其中:

  • Mindmap:表示创建 Mermaid 思维导图
  • root(()):表示创建圆形根主题

常用语法

语法图形意义
mindmap思维导图创建一个思维导图
root[text]矩形矩形根主题
root(text)圆角矩形圆角矩形根主题
root((text))圆形圆形根主题
root{{text}}六边形六边形根主题
root)text(气泡图气泡根主题
[text]矩形矩形节点
(text)圆角矩形圆角矩形节点
((text))圆形圆形节点
{{text}}六边形六边形节点
)text(气泡图气泡节点

Mermaid生成思维导图详细语法请访问以下页面查看:https://www.processon.com/mermaid/mindmap

思维导图主要通过缩进表示层级关系,因此非常适合知识整理、头脑风暴、课程笔记和信息架构,免费体验Mermaid思维导图在线编辑器。

Mermaid甘特图

基础语法

Mermaid 使用 gantt 声明创建甘特图。

gantt

    title 项目计划

    dateFormat YYYY-MM-DD

    section 设计

    需求分析 :a1, 2026-01-01, 3d

    UI设计 :after a1, 2d

    section 开发

    前端开发 :2026-01-06, 4d

    后端开发 :2026-01-07, 4d

渲染效果

其中:

  • gantt:表示创建 Mermaid 甘特图
  • title:表示甘特图的标题
  • dateFormat:定义时间轴日期解析格式
  • section 设计:表示不同的任务分组

常用语法

语法图形意义
gantt甘特图创建一个甘特图
title text标题设置甘特图标题
dateFormat text日期配置标识定义时间轴日期解析格式
section text分组色块标题栏划分任务分组
TaskName : id, startDate, endDate横向任务长条定义任务的相关属性
startDate横向任务长条定义起始时间
endDate横向任务长条定义结束时间
duration横向任务长条定义任务持续时间
id自定义定义任务的编号
after id横向任务长条定义跟随前置任务开始的任务
16d, 2w横向任务长条表示天或周
milestone, date实心菱形设置里程碑节点

Mermaid生成甘特图详细语法请访问以下页面查看:https://www.processon.com/mermaid/gantt

甘特图适合项目计划、任务安排、开发进度和项目管理,,免费体验Mermaid甘特图在线编辑器。

Mermaid用户旅程图

基础语法

Mermaid 使用 journey 声明创建用户旅程图。

journey

    title 用户购买商品

    section 浏览

      搜索商品: 5: 用户

      查看详情: 4: 用户

    section 下单

      加入购物车: 5: 用户

      完成支付: 3: 用户

渲染效果

其中:

  • journey:表示创建 Mermaid 用户旅程图
  • title:表示用户旅程图的标题
  • section 浏览:表示流程阶段分组
  • 搜素商品:5:用户:定义阶段内具体任务、满意度分支、参与角色

常用语法

语法图形意义
journey用户旅程图创建一个用户旅程图
title text标题用户旅程图标题
section text分段区块划分流程阶段分组
TaskName:num:Actor流程节点+满意度刻度轴定义阶段内交互任务、满意度分值、参与角色
num (1~5)满意度评分1分最低,5分最佳
Me, Cat角色定义参与该任务的多个角色

Mermaid生成用户旅程图详细语法请访问以下页面查看:https://www.processon.com/mermaid/user-journey-diagram

用户旅程图适合分析客户从接触产品到完成目标过程中经历的不同步骤和体验,免费体验Mermaid用户旅程图在线编辑器。 

Mermaid时间轴

基础语法

Mermaid 使用 timeline 声明创建时间轴。

timeline

    title Mermaid发展历程

    2019 : 项目发展

    2020 : 功能扩展

    2021 : 更多图表类型

渲染效果

其中:

  • timeline:表示创建 Mermaid 时间轴
  • title:表示时间轴标题
  • 2019 : 项目发展:定义时间点对应的事件

常用语法

语法图形意义
timeline时间轴创建一个时间轴
title text标题设置时间轴标题
section text分段区块划分时间阶段分组
date : Event1事件定义时间点对应的事件
: Event2多事件同一时间对应其他事件
空格换行对超长事件描述换行

Mermaid生成时间轴详细语法请访问以下页面查看:https://www.processon.com/mermaid/timeline

时间轴适合展示历史事件、项目发展、产品迭代和时间顺序信息,免费体验Mermaid时间轴在线编辑器。

Mermaid象限图语法

基础语法

Mermaid 使用 quadrantChart 声明创建象限图。

quadrantChart

    title 产品定位

    x-axis 低价格 --> 高价格

    y-axis 低质量 --> 高质量

    quadrant-1 高端

    quadrant-2 品质

    quadrant-3 基础

    quadrant-4 性价比

    产品A: [0.8, 0.7]

    产品B: [0.3, 0.8]

渲染效果

其中:

  • quadrantChart:表示创建 Mermaid 象限图
  • x-axis:定义横轴两端标签
  • y-axis:定义纵轴两端标签
  • quadrant-1:设置右上象限内部标注文字
  • quadrant-2:设置左上象限内部标注文字
  • quadrant-3:设置左下象限内部标注文字
  • quadrant-4:设置右下象限内部标注文字
  • 产品A: [0.8, 0.7]:定义坐标点位,x/y取值 0-1

 

Mermaid生成象限图详细语法请访问以下页面查看:https://www.processon.com/mermaid/quadrant-chart

象限图适合产品定位、优先级分析、竞争分析和二维分类,免费体验Mermaid象限图在线编辑器。

Mermaid看板图

基础语法

Mermaid 看板图用于按照任务状态组织工作项目,例如待处理、进行中和已完成。典型结构可以表示为:

kanban

    Todo

        任务A

        任务B

    Doing

        任务C

    Done

        任务D

渲染效果

其中;

  • kanban:表示创建Mermaid看板图
  • Todo:定义看板状态分类
  • 任务A:表示具体任务

 

Mermaid生成看板图详细语法请访问以下页面查看:https://www.processon.com/mermaid/kanban

看板图适合项目管理、任务跟踪、研发流程和工作流管理,免费体验Mermaid看板图在线编辑器。

Mermaid需求图

基础语法

需求图可以用于表示需求、功能和系统元素之间的关系,Mermaid 使用 requirementDiagram 声明创建需求图。

requirementDiagram

requirement userRequirement {

    id: 1

    text: Customers can purchase products

    risk: low

    verifymethod: test

}

渲染效果

其中:

  • requirementDiagram:表示创建 Mermaid 需求图
  • requirement userRequirement { }:定义基础需求
  • text:定义需求名称
  • risk:定义风险等级
  • verifymethod:定义验证方法

常用语法

语法图形意义
requirementDiagram需求图创建一个需求图
Requirement name { }需求定义基础需求
functionalRequirement name { }功能定义功能需求
interfaceRequirement name { }接口定义接口需求
performanceRequirement name { }性能定义性能需求
physicalRequirement name { }物理定义物理需求
element name {type: name docRef: name}元素定义系统 / 组件 / 测试等实体元素
X - satisfies -> Y虚线箭头实体满足对应需求
X - contains -> Y实线,起点有十字加号圆形端点一个需求包含另一个需求
X - derives -> Y虚线箭头需求由另一需求衍生
X - copies -> Y虚线箭头需求复制另一需求
X - traces -> Y虚线箭头需求双向追溯关联

Mermaid生成需求图详细语法请访问以下页面查看:https://www.processon.com/mermaid/requirement-diagram

需求图适合产品需求分析、系统工程和需求追踪,免费体验Mermaid需求图在线编辑器。

Mermaid饼图

基础语法

Mermaid 使用 pie 声明创建饼图。

pie showData

    title 世界各大洲人口占比

    "亚洲" : 59.5

    "非洲" : 18.0

    "欧洲" : 9.0

    "北美洲" : 7.5

    "南美洲" : 5.5

    "大洋洲" : 0.5

渲染效果

其中:

  • pie:表示创建 Mermaid 饼图
  • pie showData:表示创建一个显示数据值的Mermaid饼图
  • title:表示饼图标题
  • "Chrome" : 60:定义数据分类及占比

 

Mermaid生成饼图详细语法请访问以下页面查看:https://www.processon.com/mermaid/pie-chart

饼图适合表示比例和构成关系,免费体验Mermaid饼图在线编辑器。

Mermaid桑基图

基础语法

桑基图主要用于表示不同节点之间的流量、资源、资金或数据流向,Mermaid 使用 sankey-beta 声明创建桑基图。

sankey-beta

A,B,50

A,C,30

B,D,20

C,D,30

渲染效果

其中:

  • sankey-beta:表示创建 Mermaid 桑基图
  • A,B,50:定义数据流向:来源、目标和流量值
  • A:左侧节点,表示数据输入来源
  • B:右侧节点,表示数据输出去向
  • 50:表示流量大小

 

Mermaid生成桑基图详细语法请访问以下页面查看:https://www.processon.com/mermaid/sankey-diagram 

桑基图是一种用于显示从一组数值到另一组数值流动的可视化图表,免费体验Mermaid桑基图在线编辑器。

Mermaid XY图

基础语法

Mermaid 使用 xychart-beta 声明创建 XY 图。

xychart-beta

    title "月度销售数据"

    x-axis "月份"["1月", "2月", "3月", "4月", "5月", "6月"]

    y-axis "销售额(万元)" 0 --> 100

    line [20, 30, 40, 35, 50, 60]

    bar  [30, 50, 35, 20, 45, 40]

渲染效果

其中:

  • xychart-beta:表示创建 Mermaid XY 图
  • title:表示xy图标题
  • x-axis:表示横轴类别和标题
  • y-axis:表示纵轴范围和标题
  • line:定义折线图数据数列
  • bar:定义柱状图数据序列

常用语法

语法图形意义
xychart-betaXY坐标图创建一个XY坐标图
xychart-beta horizontal横向XY坐标图创建一个横向XY坐标图
title "name"标题定义XY图标题
x-axis "axisTitle" [a,b,c]X轴定义横轴类别和标题
y-axis "axisTitle" min --> maxY轴定义纵轴范围和标题
y-axis "axisTitle"仅带标题Y轴仅设置纵轴名称,数值范围自动适配
bar [num1, num2, num3]柱形图定义柱状图数据序列
line [num1, num2, num3]折线图定义折线图数据序列

Mermaid生成xy图详细语法请访问以下页面查看:https://www.processon.com/mermaid/xy-chart

XY图适合展示数据变化、数值比较和简单的数据可视化,免费体验Mermaid XY图在线编辑器。

Mermaid雷达图

基础语法

雷达图适合比较多个对象在多个维度上的表现,例如能力评估、产品指标和方案比较。Mermaid 使用 radar-beta 声明创建雷达图。

radar-beta

    title "能力评估雷达图"

    axis a["沟通能力"], b["逻辑思维"], c["团队协作"], d["技术技能"]

    curve A["张三"] {80, 90, 70, 85}

    curve B["李四"] {60, 70, 90, 80}

渲染效果

其中:

  • radar-beta:表示创建 Mermaid雷达图
  • title:定义雷达图标题
  • axis:定义雷达图纬度及名称
  • curve:定义数据系列名称及各维度数值

常用语法

语法图形意义
radar-beta雷达图创建一个雷达图
title "name"标题定义雷达图标题,紧跟在radar-beta之后
title "name"标题定义雷达图标题,放在radar-beta之前,且上下都需添加3条中划线
axis id ["axisTitle"]维度轴定义雷达图维度及名称
curve id ["name"]{[values]}数据曲线定义数据系列名称及各维度数值
max value最大值设置雷达图数值范围的最大值
min value最小值设置雷达图数值范围的最小值

Mermaid生成雷达图详细语法请访问以下页面查看:https://www.processon.com/mermaid/radar-chart

雷达图对于需要以圆形格式清晰简洁地表示数据的开发者、数据科学家和工程师特别有用,免费体验Mermaid雷达图在线编辑器。

Mermaid Git图

基础语法

Mermaid 使用 gitGraph 声明创建 Git 图。

gitGraph

    commit

    branch develop

    checkout develop

    commit

    checkout main

    merge develop

渲染效果

其中:

  • gitGraph:表示创建 Mermaid Git图
  • commit:表示创建提交
  • commit id:"":设置提交名称
  • branch:表示创建分支
  • checkout:表示切换分支
  • merge:表示合并分支

 

Mermaid生成Git图详细语法请访问以下页面查看:https://www.processon.com/mermaid/git-graph

Git 图适合表示 Git 提交、分支创建、分支切换和合并等版本控制过程,免费体验Mermaid Git图在线编辑器。

Mermaid C4图

基础语法

Mermaid C4图用于软件架构建模,可以从不同层级描述软件系统、容器、组件以及它们之间的关系。

C4Context

    title 业务系统C4图

    Person(user, "用户", "系统使用者")

    System(system, "业务系统", "核心业务系统")

    Rel(user, system, "使用")

渲染效果

其中:

  • C4Context:表示创建 C4 上下文图
  • title:表示C4图标题
  • Person(user, "用户", "系统使用者"):表示使用系统的用户或角色
  • System(system, "业务系统", "核心业务系统"):表示需要分析的软件系统
  • Rel(user, system, "使用"):定义两个元素之间的调用、交互或数据传递关系

常用语法

语法图形意义
C4Context系统上下文图创建一个C4系统上下文图
C4Container容器图创建一个C4容器图
C4Component组件图创建一个C4组件图
C4Dynamic动态交互图创建一个C4动态交互图
C4Deployment部署图创建一个C4部署图
title标题设置C4图标题
Person(alias, "label", "description")人表示使用系统的用户或角色
Person_Ext(alias, "label", "description")外部人表示系统外部参与交互的人员或组织角色
System(alias, "label", "description")系统节点表示需要分析的软件系统
System_Ext(alias, "label", "description")外部系统节点表示系统依赖的第三方服务或外部软件系统
System_Boundary(alias, "label")系统边界表示系统范围边界
Container(alias, "label", "technology")容器表示系统内部可独立运行的软件单元
Container_Boundary(alias, "label")容器边界表示一个容器或服务的范围

 Mermaid生成C4图详细语法请访问以下页面查看:https://www.processon.com/mermaid/c4-diagram

C4 图适合软件架构设计、系统分析和技术文档,免费体验Mermaid C4图在线编辑器。

Mermaid架构图

基础语法

Mermaid 使用 architecture-beta 声明创建架构图。

architecture-beta

    group api(cloud)[API server]

    service server(server)[server] in api

    service database(database)[databasa] in api

    server:R --> L:database

渲染效果

其中:

  • architecture-beta:表示创建 Mermaid 架构图。
  • group api(cloud)[API server]:创建一个架构分组
  • service server(server)[server] in api:创建一个架构组件或服务模块,并放置在架构分组中
  • server:R --> L:database:指定节点连接方向,从 server 的右侧指向 database 的左侧

 

Mermaid生成架构图详细语法请访问以下页面查看:https://www.processon.com/mermaid/architecture-diagram

架构图适合表示服务器、数据库、云服务、应用服务以及不同系统组件之间的关系,免费体验Mermaid架构图在线编辑器。 

Mermaid框图

基础语法

框图主要通过模块和连接关系描述系统结构,Mermaid 使用 block-beta 声明创建框图。

block-beta

    A space B

    A["用户"] --> B["应用"]

    B space C

    B --> C["数据库"]

渲染效果

其中:

  • block-beta:表示创建 Mermaid 框图
  • space:加大每个单元或模块的间距
  • -->:实线箭头,表示关系走向

 

Mermaid生成框图详细语法请访问以下页面查看:https://www.processon.com/mermaid/block-diagram

框图适合系统模块、功能结构、技术架构和组件关系等场景,免费体验Mermaid框图在线编辑器。

Mermaid数据包图

基础语法

数据包图主要用于表示网络数据包或协议数据结构中的字段和长度,Mermaid 使用 packet-beta 声明创建数据包图。

packet-beta

    0-7: "版本"

    8-15: "类型"

    16-31: "长度"

渲染效果

其中:

  • packet-beta:表示创建 Mermaid 数据包图
  • 0-7: "版本":表示字段占用的bit范围


数据包图适合网络协议、数据包结构和技术规范文档,免费体验Mermaid数据包图在线编辑器。

不会Mermaid语法怎么办?

不熟悉 Mermaid 语法并不意味着不能使用 Mermaid 生成图形,可以采用以下几种方式:

免费使用Mermaid模板

先选择与需求接近的模板,然后修改其中的节点、文字和关系。这种方式适合第一次使用 Mermaid 的用户。

AI生成Mermaid代码

可以直接用自然语言描述需要的图表,例如:

创建一个电商订单处理流程,包括用户下单、支付、库存检查、发货和订单完成。

AI 可以根据描述生成 Mermaid 代码,再根据实际需求修改。

使用AI检查和修复代码

如果 Mermaid 代码出现语法错误,可以让 AI 帮助定位问题并修改代码。

通过图像识别生成代码

对于已经存在的流程图、架构图或其他结构化图表,可以尝试通过图像识别生成 Mermaid 代码,再继续编辑。

Mermaid在线编辑器有哪些功能?

Mermaid在线编辑器通常需要解决三个核心问题:代码编写、图表预览和结果导出。除此之外,模板和AI也可以降低Mermaid的使用门槛。

以ProcessOn Mermaid在线编辑器为例,可以在浏览器中直接:

  • 编写Mermaid代码
  • 粘贴已有Mermaid代码
  • 实时渲染和预览图表
  • 免费使用Mermaid模板
  • 自然语言AI生成 Mermaid 图表
  • AI检查和修复Mermaid代码
  • 通过图片识别生成Mermaid代码
  • 对生成的图形二次编辑和修改
  • 导出 PNG、PDF、SVG、JPG、Markdown格式

因此,对于需要频繁创建Mermaid图形的用户来说,ProcessOn Mermaid在线编辑器可以将Mermaid代码编写、图形生成、二次编辑、导出分享集中在一个工作环境中。

从Mermaid 流程图、时序图、类图,到甘特图、思维导图、象限图、桑基图、Git图、C4图和架构图,都可以通过 Mermaid语法创建和编辑。

快来使用Mermaid在线编辑器,在线编写Mermaid 代码并生成图表吧。

常见问题

Mermaid 语法难学吗?

Mermaid 基础语法相对简单,大多数图表只需要掌握图表声明、节点、连线和文本等基本写法。例如,sequenceDiagram 用于声明时序图,flowchart 用于声明流程图。不同图表类型的语法规则有所区别,复杂图表还需要进一步学习对应的参数和配置。

Mermaid 代码写错了为什么不能生成图?

Mermaid 对语法结构比较敏感。常见原因包括图表声明写错、节点或连线语法不完整、缩进或特殊字符处理不正确,以及使用了当前 Mermaid 版本不支持的语法。

Mermaid 支持中文吗?

支持。节点文本、标题、说明等位置通常可以直接使用中文,但需求图、桑基图、架构图不支持中文。

如果出现中文显示异常,通常需要进一步检查编辑器、字体或导出环境,而不一定是 Mermaid 语法本身的问题。

Mermaid和传统绘图软件有什么区别?

Mermaid主要通过文本代码描述图表,而传统绘图软件通常通过拖拽图形、连线和调整样式来制作图表。

Mermaid图表可以保存和复用吗?

可以。Mermaid图表的核心内容是文本代码,因此可以将代码保存到 Markdown、代码文件或其他支持Mermaid的文档中,需要时再次渲染。

这也是 Mermaid 与纯图片形式图表的一个重要区别:图片保存的是最终结果,而 Mermaid 代码同时保存了图表的结构信息。

Mermaid 和 Markdown 有什么关系?

Mermaid 经常与 Markdown 一起使用,但两者并不是同一种语法。

Markdown 主要用于编写结构化文本,而 Mermaid 用于通过代码生成图表。在支持 Mermaid 的 Markdown 编辑器中,可以将 Mermaid 代码嵌入 Markdown 文档,从而让图表与文字说明放在同一个文档中。

免费在线协同思维导图流程图 免费使用
Document