852 字
4 分钟
Markdown Mermaid 图表
使用 Mermaid 图表的 Markdown 完整指南
本文演示如何在 Markdown 文档中使用 Mermaid 创建多种复杂图表,包括流程图、时序图、甘特图、类图与状态图。
流程图示例
流程图非常适合表示流程或算法步骤。
graph TD
A[Start] --> B{Condition Check}
B -->|Yes| C[Process Step 1]
B -->|No| D[Process Step 2]
C --> E[Subprocess]
D --> E
subgraph E [Subprocess Details]
E1[Substep 1] --> E2[Substep 2]
E2 --> E3[Substep 3]
end
E --> F{Another Decision}
F -->|Option 1| G[Result 1]
F -->|Option 2| H[Result 2]
F -->|Option 3| I[Result 3]
G --> J[End]
H --> J
I --> J
时序图示例
时序图展示对象随时间的交互过程。
sequenceDiagram
participant 用户
participant WebApp
participant 服务器
participant 数据库
用户->>WebApp: 提交登录请求
WebApp->>服务器: 发送认证请求
服务器->>数据库: 查询用户凭证
数据库-->>服务器: 返回用户数据
服务器-->>WebApp: 返回认证结果
alt 认证成功
WebApp->>用户: 显示欢迎页
WebApp->>服务器: 请求用户数据
服务器->>数据库: 获取用户偏好
数据库-->>服务器: 返回偏好
服务器-->>WebApp: 返回用户数据
WebApp->>用户: 加载个性化界面
else 认证失败
WebApp->>用户: 显示错误提示
WebApp->>用户: 提示重新输入
end
甘特图示例
甘特图非常适合展示项目进度与时间线。
gantt
title 网站开发项目时间线
dateFormat YYYY-MM-DD
axisFormat %m/%d
section 设计阶段
需求分析 :a1, 2023-10-01, 7d
UI 设计 :a2, after a1, 10d
原型制作 :a3, after a2, 5d
section 开发阶段
前端开发 :b1, 2023-10-20, 15d
后端开发 :b2, after a2, 18d
数据库设计 :b3, after a1, 12d
section 测试阶段
单元测试 :c1, after b1, 8d
集成测试 :c2, after b2, 10d
用户验收测试 :c3, after c2, 7d
section 部署
生产环境部署 :d1, after c3, 3d
上线 :milestone, after d1, 0d
类图示例
类图展示系统的静态结构,包括类、属性、方法及其关系。
classDiagram
class User {
+String username
+String password
+String email
+Boolean active
+login()
+logout()
+updateProfile()
}
class Article {
+String title
+String content
+Date publishDate
+Boolean published
+publish()
+edit()
+delete()
}
class Comment {
+String content
+Date commentDate
+addComment()
+deleteComment()
}
class Category {
+String name
+String description
+addArticle()
+removeArticle()
}
User "1" -- "*" Article : writes
User "1" -- "*" Comment : posts
Article "1" -- "*" Comment : has
Article "1" -- "*" Category : belongs to
状态图示例
状态图展示对象在其生命周期中经历的状态序列。
stateDiagram-v2
[*] --> Draft
Draft --> UnderReview : submit
UnderReview --> Draft : reject
UnderReview --> Approved : approve
Approved --> Published : publish
Published --> Archived : archive
Published --> Draft : retract
state Published {
[*] --> Active
Active --> Hidden : temporarily hide
Hidden --> Active : restore
Active --> [*]
Hidden --> [*]
}
Archived --> [*]
饼图示例
饼图适用于展示占比和百分比数据。
pie title 网站流量来源分析
"搜索引擎" : 45.6
"直接访问" : 30.1
"社交媒体" : 15.3
"推荐链接" : 6.4
"其他来源" : 2.6
总结
Mermaid 是一个强大的工具,可在 Markdown 文档中创建多种图表。本文展示了如何使用流程图、时序图、甘特图、类图、状态图和饼图,帮助你更清晰地表达复杂概念、流程和数据结构。
要使用 Mermaid,只需在代码块中声明 mermaid 语言,并用简洁的文本语法描述图表,Mermaid 会自动将其渲染为精美的可视化图。
在下一篇技术博客或项目文档中试试 Mermaid 图表吧——它会让内容更专业、更易理解!
Markdown Mermaid 图表
https://www.cuteleaf.cn/posts/markdown-mermaid/ 部分信息可能已经过时