151 lines
3.6 KiB
Markdown
151 lines
3.6 KiB
Markdown
---
|
|
title: "Mermaid 图表语法示例"
|
|
date: 2026-05-19T10:00:00+08:00
|
|
draft: false
|
|
description: "Mermaid 官方语法示例合集:流程图、时序图、类图、状态图、甘特图、饼图、Git 图等全部图表示范。"
|
|
tags:
|
|
- Mermaid
|
|
- 图表
|
|
- 语法
|
|
poet: |
|
|
大音希声,大象无形。
|
|
——老子,中国,约前571–约前471
|
|
---
|
|
|
|
> 原文:[Mermaid Examples](https://mermaid.js.org/syntax/examples.html)
|
|
|
|
# Examples
|
|
|
|
This page contains a collection of examples of diagrams and charts that can be created through mermaid and its myriad applications.
|
|
|
|
**If you wish to learn how to support mermaid on your webpage, read the [Beginner's Guide](../config/usage.md?id=usage).**
|
|
|
|
**If you wish to learn about mermaid's syntax, Read the [Diagram Syntax](../syntax/flowchart.md?id=flowcharts-basic-syntax) section.**
|
|
|
|
## Basic Pie Chart
|
|
|
|
```mermaid
|
|
pie title NETFLIX
|
|
"Time spent looking for movie" : 90
|
|
"Time spent watching it" : 10
|
|
```
|
|
|
|
```mermaid
|
|
pie title What Voldemort doesn't have?
|
|
"FRIENDS" : 2
|
|
"FAMILY" : 3
|
|
"NOSE" : 45
|
|
```
|
|
|
|
## Basic sequence diagram
|
|
|
|
```mermaid
|
|
sequenceDiagram
|
|
Alice ->> Bob: Hello Bob, how are you?
|
|
Bob-->>John: How about you John?
|
|
Bob--x Alice: I am good thanks!
|
|
Bob-x John: I am good thanks!
|
|
Note right of John: Bob thinks a long<br/>long time, so long<br/>that the text does<br/>not fit on a row.
|
|
|
|
Bob-->Alice: Checking with John...
|
|
Alice->John: Yes... John, how are you?
|
|
```
|
|
|
|
## Basic flowchart
|
|
|
|
```mermaid
|
|
graph LR
|
|
A[Square Rect] -- Link text --> B((Circle))
|
|
A --> C(Round Rect)
|
|
B --> D{Rhombus}
|
|
C --> D
|
|
```
|
|
|
|
## SequenceDiagram: Loops, alt and opt
|
|
|
|
```mermaid
|
|
sequenceDiagram
|
|
loop Daily query
|
|
Alice->>Bob: Hello Bob, how are you?
|
|
alt is sick
|
|
Bob->>Alice: Not so good :(
|
|
else is well
|
|
Bob->>Alice: Feeling fresh like a daisy
|
|
end
|
|
|
|
opt Extra response
|
|
Bob->>Alice: Thanks for asking
|
|
end
|
|
end
|
|
```
|
|
|
|
## SequenceDiagram: Message to self in loop
|
|
|
|
```mermaid
|
|
sequenceDiagram
|
|
participant Alice
|
|
participant Bob
|
|
Alice->>John: Hello John, how are you?
|
|
loop HealthCheck
|
|
John->>John: Fight against hypochondria
|
|
end
|
|
Note right of John: Rational thoughts<br/>prevail...
|
|
John-->>Alice: Great!
|
|
John->>Bob: How about you?
|
|
Bob-->>John: Jolly good!
|
|
```
|
|
|
|
## Sequence Diagram: Blogging app service communication
|
|
|
|
```mermaid
|
|
sequenceDiagram
|
|
participant web as Web Browser
|
|
participant blog as Blog Service
|
|
participant account as Account Service
|
|
participant mail as Mail Service
|
|
participant db as Storage
|
|
|
|
Note over web,db: The user must be logged in to submit blog posts
|
|
web->>+account: Logs in using credentials
|
|
account->>db: Query stored accounts
|
|
db->>account: Respond with query result
|
|
|
|
alt Credentials not found
|
|
account->>web: Invalid credentials
|
|
else Credentials found
|
|
account->>-web: Successfully logged in
|
|
|
|
Note over web,db: When the user is authenticated, they can now submit new posts
|
|
web->>+blog: Submit new post
|
|
blog->>db: Store post data
|
|
|
|
par Notifications
|
|
blog--)mail: Send mail to blog subscribers
|
|
blog--)db: Store in-site notifications
|
|
and Response
|
|
blog-->>-web: Successfully posted
|
|
end
|
|
end
|
|
|
|
```
|
|
|
|
## A commit flow diagram.
|
|
|
|
```mermaid
|
|
gitGraph:
|
|
commit "Ashish"
|
|
branch newbranch
|
|
checkout newbranch
|
|
commit id:"1111"
|
|
commit tag:"test"
|
|
checkout main
|
|
commit type: HIGHLIGHT
|
|
commit
|
|
merge newbranch
|
|
commit
|
|
branch b2
|
|
commit
|
|
```
|
|
|
|
<!--- cspell:ignore Ashish newbranch --->
|