Mermaid图表编辑器:用文本创建专业图表

Mermaid图表编辑器使用简单的文本语法创建各种专业图表,支持流程图、时序图、类图等多种图表类型

优兔GOGO
2025年11月6日
技术分享
Mermaid流程图时序图类图UML图表编辑器

Mermaid图表编辑器:用文本创建专业图表

画流程图、时序图、类图,传统做法是用Visio、Draw.io等专业软件,需要安装软件,学习操作,效率低。Mermaid解决了这个问题。

Mermaid使用简单的文本语法创建各种专业图表,不需要安装软件,不需要学习复杂操作,只需要写几行代码,就能生成专业的图表。无论是流程图、时序图、类图还是甘特图,Mermaid都能轻松创建。

Mermaid是什么?

Mermaid是一个基于JavaScript的图表生成库,使用Markdown风格的文本语法创建各种图表。它支持流程图、时序图、类图、状态图、实体关系图、甘特图等多种图表类型。

Mermaid的特点:

  • 文本语法:使用简单的文本语法,不需要学习复杂操作
  • 实时预览:输入代码后实时预览,修改即时生效
  • 多种图表:支持流程图、时序图、类图等多种图表类型
  • 导出功能:支持导出SVG和PNG格式,方便使用
  • 跨平台:支持所有现代浏览器,跨平台使用

Mermaid支持的图表类型

Mermaid支持多种图表类型,包括:

流程图(Flowchart)

流程图用于展示流程和决策,使用简单的语法创建:

graph TD
    A[开始] --> B{判断}
    B -->|是| C[执行]
    B -->|否| D[结束]
    C --> D

时序图(Sequence Diagram)

时序图用于展示对象之间的交互,使用简单的语法创建:

sequenceDiagram
    participant A as 用户
    participant B as 系统
    A->>B: 请求
    B-->>A: 响应

类图(Class Diagram)

类图用于展示类之间的关系,使用简单的语法创建:

classDiagram
    class Animal {
        +String name
        +eat()
    }
    class Dog {
        +bark()
    }
    Animal <|-- Dog

状态图(State Diagram)

状态图用于展示状态转换,使用简单的语法创建:

stateDiagram-v2
    [*] --> 待处理
    待处理 --> 处理中
    处理中 --> 已完成
    处理中 --> 失败
    已完成 --> [*]
    失败 --> [*]

实体关系图(ER Diagram)

实体关系图用于展示数据库结构,使用简单的语法创建:

erDiagram
    CUSTOMER ||--o{ ORDER : places
    ORDER ||--|{ LINE-ITEM : contains
    PRODUCT ||--|{ LINE-ITEM : includes

甘特图(Gantt Chart)

甘特图用于展示项目进度,使用简单的语法创建:

gantt
    title 项目进度
    dateFormat  YYYY-MM-DD
    section 需求分析
    需求收集 :done, des1, 2024-01-01, 2024-01-05
    需求分析 :active, des2, 2024-01-06, 2024-01-10

Mermaid的使用方法

使用Mermaid图表编辑器制作图表非常简单:

第一步:选择图表类型。在工具中选择要创建的图表类型,比如流程图、时序图、类图等。

第二步:输入代码。在代码编辑框中输入Mermaid代码,工具会实时预览。

第三步:调整样式。可以调整图表的颜色、大小、字体等样式,使图表更美观。

第四步:导出图片。生成后,可以导出为SVG或PNG格式的图片,用于报告或分享。

Mermaid的语法特点

Mermaid的语法特点:

简单直观:语法简单直观,不需要学习复杂规则。

Markdown风格:使用Markdown风格的文本语法,易于阅读和编写。

实时预览:输入代码后实时预览,修改即时生效。

灵活扩展:支持自定义样式和主题,可以灵活扩展。

跨平台:支持所有现代浏览器,跨平台使用。

实际应用案例

流程图制作

需要制作一个业务流程的流程图,使用Mermaid图表编辑器,输入流程图的代码:

graph TD
    A[开始] --> B[输入数据]
    B --> C{数据验证}
    C -->|通过| D[处理数据]
    C -->|失败| E[错误提示]
    D --> F[输出结果]
    F --> G[结束]
    E --> B

工具会实时渲染流程图,可以立即看到效果。修改代码后,图表会自动更新。

时序图制作

需要制作一个系统交互的时序图,使用Mermaid图表编辑器,这时序图的代码:

sequenceDiagram
    participant U as 用户
    participant W as 前端
    participant S as 后端
    participant D as 数据库
    
    U->>W: 登录请求
    W->>S: 转发请求
    S->>D: 查询用户
    D-->>S: 返回数据
    S-->>W: 返回结果
    W-->>U: 显示结果

工具会实时渲染时序图,可以立即看到效果。

类图制作

需要制作一个系统的类图,使用Mermaid图表编辑器,输入类图的代码:

classDiagram
    class User {
        +String username
        +String password
        +login()
        +logout()
    }
    class Order {
        +String orderId
        +Date createTime
        +create()
        +cancel()
    }
    User "1" --> "*" Order : 创建

工具会实时渲染类图,可以立即看到效果。

Mermaid的优势

Mermaid相比传统图表工具的优势:

不需要安装:直接在浏览器中使用,不需要安装软件。

文本语法:使用文本语法,便于版本控制和协作。

实时预览:输入代码后实时预览,修改即时生效。

导出方便:支持导出SVG和PNG格式,方便使用。

跨平台:支持所有现代浏览器,跨平台使用。

免费使用:完全免费,不需要付费。

注意事项

使用Mermaid时,需要注意:

语法正确:确保代码语法正确,否则无法渲染。

浏览器兼容:需要支持现代浏览器,建议使用Chrome、Firefox、Edge等。

导出格式:SVG格式适合网页使用,PNG格式适合打印和分享。

样式设置:可以自定义样式,使图表更美观。

代码管理:使用文本语法,便于版本控制和协作。

Mermaid虽然简单,但能创建专业的图表。无论是流程图、时序图还是类图,都可以用Mermaid轻松创建。


🔗 相关工具