如何使用 Mermaid 绘图

You,6 min read

如何使用 Mermaid 绘图

简介

Mermaid 是一个基于 JavaScript 的图表库,它允许用户通过编写文本和代码描述来生成流程图、序列图、甘特图和其他图表类型。Mermaid 的目标是让开发者和文档编写者能够快速创建图表,而无需使用图形编辑工具,从而简化了图表的创建和维护过程。Mermaid 可以轻松集成到各种文档系统和开发工具中,例如 Markdown 编辑器、Confluence、GitLab 等。

Mermaid 的优点包括:

Mermaid 的局限性:

PlantUML 是另一种流行的图表创建工具,它的特点包括:

PlantUML 的局限性:

总之,Mermaid 和 PlantUML 都是有力的工具,选择使用哪一个通常取决于个人的需求、图表的复杂度、项目的集成环境以及个人对语法的偏好。Mermaid 由于其简单性和易于集成,对于基本的图表需求来说是一个很好的选择,而 PlantUML 则更适合需要更高质量和更复杂图表的情况。

使用

Source Code

flowchart LR
    subgraph client ["Client"]
        direction TB
        subgraph materialGroup ["Material Group"]
            MaterialA[MaterialA]
            MaterialB[MaterialB]
            MaterialC[MaterialC]
        end
        subgraph lowCode ["LowCode"]
            Material_Scheduler[Material Scheduler]
        end
    end
 
    subgraph service ["Service"]
        Material_Controller[Material Controller]
    end
 
    subgraph db ["DB"]
        MaterialA_Model[MaterialA Model]
        MaterialB_Model[MaterialB Model]
        MaterialC_Model[MaterialC Model]
    end
 
    MaterialA --> Material_Scheduler
    MaterialB --> Material_Scheduler
    MaterialC --> Material_Scheduler
    Material_Scheduler --> Material_Controller
    Material_Controller --> MaterialA_Model
    Material_Controller --> MaterialB_Model
    Material_Controller --> MaterialC_Model
 
    classDef database fill:#E6FFE6,stroke:#000000;
    classDef rectangle fill:#E0EFFF,stroke:#000000;
    classDef service fill:#FFEBE8,stroke:#000000;
    class MaterialA,MaterialB,MaterialC database
    class Material_Scheduler rectangle
    class Material_Controller service
    class MaterialA_Model,MaterialB_Model,MaterialC_Model database
 

Mermaid Graphics

语法

当然,我会为您解释上述 Mermaid 代码中每行的作用:

这些代码共同构成了一个布局整齐且具有层次结构的 Mermaid 流程图。每个 subgraph 代表了图中的一个逻辑区域或组件,classDefclass 用于应用样式,以提升图表的可读性和外观。

2026 © Lizhenyui.