说明

mermaid是一种解决文字图形转换的方案,用于在markdown标记语言中利用文本绘图,本文内容保证适合mermaid 8.8.3的内容,向上更新的内容不论。

本篇作为mermaid教程系列的第一篇,先介绍流程图(flowchart or graph)

流程图是mermaid最基础的应用内容,flowchart和graph在整体上类似,有区别的地方会单独提及。

文本框边缘形状 edges shape

流程图中,一个节点(nodes)的大概组成是

节点名称[节点展示文本]

节点展示文本的边缘形状取决于包括符号的类型,例子如下:

flowchart LR
在不做任何声明的情况下默认是矩形框

#mermaid-svg-RguM2D8JmCJwW1Y8 {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-RguM2D8JmCJwW1Y8 .error-icon{fill:#552222;}#mermaid-svg-RguM2D8JmCJwW1Y8 .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-RguM2D8JmCJwW1Y8 .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-RguM2D8JmCJwW1Y8 .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-RguM2D8JmCJwW1Y8 .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-RguM2D8JmCJwW1Y8 .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-RguM2D8JmCJwW1Y8 .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-RguM2D8JmCJwW1Y8 .marker{fill:#333333;stroke:#333333;}#mermaid-svg-RguM2D8JmCJwW1Y8 .marker.cross{stroke:#333333;}#mermaid-svg-RguM2D8JmCJwW1Y8 svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-RguM2D8JmCJwW1Y8 .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-RguM2D8JmCJwW1Y8 .cluster-label text{fill:#333;}#mermaid-svg-RguM2D8JmCJwW1Y8 .cluster-label span{color:#333;}#mermaid-svg-RguM2D8JmCJwW1Y8 .label text,#mermaid-svg-RguM2D8JmCJwW1Y8 span{fill:#333;color:#333;}#mermaid-svg-RguM2D8JmCJwW1Y8 .node rect,#mermaid-svg-RguM2D8JmCJwW1Y8 .node circle,#mermaid-svg-RguM2D8JmCJwW1Y8 .node ellipse,#mermaid-svg-RguM2D8JmCJwW1Y8 .node polygon,#mermaid-svg-RguM2D8JmCJwW1Y8 .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-RguM2D8JmCJwW1Y8 .node .label{text-align:center;}#mermaid-svg-RguM2D8JmCJwW1Y8 .node.clickable{cursor:pointer;}#mermaid-svg-RguM2D8JmCJwW1Y8 .arrowheadPath{fill:#333333;}#mermaid-svg-RguM2D8JmCJwW1Y8 .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-RguM2D8JmCJwW1Y8 .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-RguM2D8JmCJwW1Y8 .edgeLabel{background-color:#e8e8e8;text-align:center;}#mermaid-svg-RguM2D8JmCJwW1Y8 .edgeLabel rect{opacity:0.5;background-color:#e8e8e8;fill:#e8e8e8;}#mermaid-svg-RguM2D8JmCJwW1Y8 .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-RguM2D8JmCJwW1Y8 .cluster text{fill:#333;}#mermaid-svg-RguM2D8JmCJwW1Y8 .cluster span{color:#333;}#mermaid-svg-RguM2D8JmCJwW1Y8 div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-RguM2D8JmCJwW1Y8 :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}

在不做任何声明的情况下默认是矩形框
flowchart LR
A[矩形框] --> B(小圆角框) --> C{判断框} --> D([大圆角框]) --> E[[双线框]]--> F[(圆柱框)] --> G((圆框))

#mermaid-svg-dmjUCI1oOw8L20ZP {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-dmjUCI1oOw8L20ZP .error-icon{fill:#552222;}#mermaid-svg-dmjUCI1oOw8L20ZP .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-dmjUCI1oOw8L20ZP .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-dmjUCI1oOw8L20ZP .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-dmjUCI1oOw8L20ZP .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-dmjUCI1oOw8L20ZP .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-dmjUCI1oOw8L20ZP .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-dmjUCI1oOw8L20ZP .marker{fill:#333333;stroke:#333333;}#mermaid-svg-dmjUCI1oOw8L20ZP .marker.cross{stroke:#333333;}#mermaid-svg-dmjUCI1oOw8L20ZP svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-dmjUCI1oOw8L20ZP .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-dmjUCI1oOw8L20ZP .cluster-label text{fill:#333;}#mermaid-svg-dmjUCI1oOw8L20ZP .cluster-label span{color:#333;}#mermaid-svg-dmjUCI1oOw8L20ZP .label text,#mermaid-svg-dmjUCI1oOw8L20ZP span{fill:#333;color:#333;}#mermaid-svg-dmjUCI1oOw8L20ZP .node rect,#mermaid-svg-dmjUCI1oOw8L20ZP .node circle,#mermaid-svg-dmjUCI1oOw8L20ZP .node ellipse,#mermaid-svg-dmjUCI1oOw8L20ZP .node polygon,#mermaid-svg-dmjUCI1oOw8L20ZP .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-dmjUCI1oOw8L20ZP .node .label{text-align:center;}#mermaid-svg-dmjUCI1oOw8L20ZP .node.clickable{cursor:pointer;}#mermaid-svg-dmjUCI1oOw8L20ZP .arrowheadPath{fill:#333333;}#mermaid-svg-dmjUCI1oOw8L20ZP .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-dmjUCI1oOw8L20ZP .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-dmjUCI1oOw8L20ZP .edgeLabel{background-color:#e8e8e8;text-align:center;}#mermaid-svg-dmjUCI1oOw8L20ZP .edgeLabel rect{opacity:0.5;background-color:#e8e8e8;fill:#e8e8e8;}#mermaid-svg-dmjUCI1oOw8L20ZP .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-dmjUCI1oOw8L20ZP .cluster text{fill:#333;}#mermaid-svg-dmjUCI1oOw8L20ZP .cluster span{color:#333;}#mermaid-svg-dmjUCI1oOw8L20ZP div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-dmjUCI1oOw8L20ZP :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}

矩形框
小圆角框
判断框
大圆角框
双线框
圆柱框
圆框
flowchart LR
H>标签框] --> I{{六角框}} -->J[/平行四边形框/] --> K[\平行四边形框\] --> L[/梯形框\] --> M[\倒梯形框/]

#mermaid-svg-GdD95NEda3ZxKZ6Z {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-GdD95NEda3ZxKZ6Z .error-icon{fill:#552222;}#mermaid-svg-GdD95NEda3ZxKZ6Z .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-GdD95NEda3ZxKZ6Z .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-GdD95NEda3ZxKZ6Z .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-GdD95NEda3ZxKZ6Z .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-GdD95NEda3ZxKZ6Z .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-GdD95NEda3ZxKZ6Z .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-GdD95NEda3ZxKZ6Z .marker{fill:#333333;stroke:#333333;}#mermaid-svg-GdD95NEda3ZxKZ6Z .marker.cross{stroke:#333333;}#mermaid-svg-GdD95NEda3ZxKZ6Z svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-GdD95NEda3ZxKZ6Z .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-GdD95NEda3ZxKZ6Z .cluster-label text{fill:#333;}#mermaid-svg-GdD95NEda3ZxKZ6Z .cluster-label span{color:#333;}#mermaid-svg-GdD95NEda3ZxKZ6Z .label text,#mermaid-svg-GdD95NEda3ZxKZ6Z span{fill:#333;color:#333;}#mermaid-svg-GdD95NEda3ZxKZ6Z .node rect,#mermaid-svg-GdD95NEda3ZxKZ6Z .node circle,#mermaid-svg-GdD95NEda3ZxKZ6Z .node ellipse,#mermaid-svg-GdD95NEda3ZxKZ6Z .node polygon,#mermaid-svg-GdD95NEda3ZxKZ6Z .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-GdD95NEda3ZxKZ6Z .node .label{text-align:center;}#mermaid-svg-GdD95NEda3ZxKZ6Z .node.clickable{cursor:pointer;}#mermaid-svg-GdD95NEda3ZxKZ6Z .arrowheadPath{fill:#333333;}#mermaid-svg-GdD95NEda3ZxKZ6Z .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-GdD95NEda3ZxKZ6Z .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-GdD95NEda3ZxKZ6Z .edgeLabel{background-color:#e8e8e8;text-align:center;}#mermaid-svg-GdD95NEda3ZxKZ6Z .edgeLabel rect{opacity:0.5;background-color:#e8e8e8;fill:#e8e8e8;}#mermaid-svg-GdD95NEda3ZxKZ6Z .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-GdD95NEda3ZxKZ6Z .cluster text{fill:#333;}#mermaid-svg-GdD95NEda3ZxKZ6Z .cluster span{color:#333;}#mermaid-svg-GdD95NEda3ZxKZ6Z div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-GdD95NEda3ZxKZ6Z :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}

标签框
六角框
平行四边形框
平行四边形框
梯形框
倒梯形框

说明: LR为mermaid的图像朝向,关于图像朝向的内容可关注下面内容

注释 comments

flowchart LR
%% this is a comment A -- text --> B{node}A -- text --> B -- text2 --> C

#mermaid-svg-eugjixxGtSzW9HGO {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-eugjixxGtSzW9HGO .error-icon{fill:#552222;}#mermaid-svg-eugjixxGtSzW9HGO .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-eugjixxGtSzW9HGO .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-eugjixxGtSzW9HGO .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-eugjixxGtSzW9HGO .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-eugjixxGtSzW9HGO .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-eugjixxGtSzW9HGO .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-eugjixxGtSzW9HGO .marker{fill:#333333;stroke:#333333;}#mermaid-svg-eugjixxGtSzW9HGO .marker.cross{stroke:#333333;}#mermaid-svg-eugjixxGtSzW9HGO svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-eugjixxGtSzW9HGO .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-eugjixxGtSzW9HGO .cluster-label text{fill:#333;}#mermaid-svg-eugjixxGtSzW9HGO .cluster-label span{color:#333;}#mermaid-svg-eugjixxGtSzW9HGO .label text,#mermaid-svg-eugjixxGtSzW9HGO span{fill:#333;color:#333;}#mermaid-svg-eugjixxGtSzW9HGO .node rect,#mermaid-svg-eugjixxGtSzW9HGO .node circle,#mermaid-svg-eugjixxGtSzW9HGO .node ellipse,#mermaid-svg-eugjixxGtSzW9HGO .node polygon,#mermaid-svg-eugjixxGtSzW9HGO .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-eugjixxGtSzW9HGO .node .label{text-align:center;}#mermaid-svg-eugjixxGtSzW9HGO .node.clickable{cursor:pointer;}#mermaid-svg-eugjixxGtSzW9HGO .arrowheadPath{fill:#333333;}#mermaid-svg-eugjixxGtSzW9HGO .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-eugjixxGtSzW9HGO .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-eugjixxGtSzW9HGO .edgeLabel{background-color:#e8e8e8;text-align:center;}#mermaid-svg-eugjixxGtSzW9HGO .edgeLabel rect{opacity:0.5;background-color:#e8e8e8;fill:#e8e8e8;}#mermaid-svg-eugjixxGtSzW9HGO .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-eugjixxGtSzW9HGO .cluster text{fill:#333;}#mermaid-svg-eugjixxGtSzW9HGO .cluster span{color:#333;}#mermaid-svg-eugjixxGtSzW9HGO div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-eugjixxGtSzW9HGO :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}

text
text2
A
B
C

箭头 arrow

flowchart的箭头连接相比graph在某些编辑器中要更加平滑一点,有些编辑器对graph的支持也较差(比如CSDN自己的,graph的箭头就无法分辨,只能用flowchart)

箭头类型

实线

实线的基本单元是— 和 --> 分别是不带箭头的和带箭头的,基本形式如下:

flowchart LR
A --- B
B --> C

#mermaid-svg-7M25K8YZQI9S5W8e {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-7M25K8YZQI9S5W8e .error-icon{fill:#552222;}#mermaid-svg-7M25K8YZQI9S5W8e .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-7M25K8YZQI9S5W8e .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-7M25K8YZQI9S5W8e .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-7M25K8YZQI9S5W8e .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-7M25K8YZQI9S5W8e .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-7M25K8YZQI9S5W8e .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-7M25K8YZQI9S5W8e .marker{fill:#333333;stroke:#333333;}#mermaid-svg-7M25K8YZQI9S5W8e .marker.cross{stroke:#333333;}#mermaid-svg-7M25K8YZQI9S5W8e svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-7M25K8YZQI9S5W8e .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-7M25K8YZQI9S5W8e .cluster-label text{fill:#333;}#mermaid-svg-7M25K8YZQI9S5W8e .cluster-label span{color:#333;}#mermaid-svg-7M25K8YZQI9S5W8e .label text,#mermaid-svg-7M25K8YZQI9S5W8e span{fill:#333;color:#333;}#mermaid-svg-7M25K8YZQI9S5W8e .node rect,#mermaid-svg-7M25K8YZQI9S5W8e .node circle,#mermaid-svg-7M25K8YZQI9S5W8e .node ellipse,#mermaid-svg-7M25K8YZQI9S5W8e .node polygon,#mermaid-svg-7M25K8YZQI9S5W8e .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-7M25K8YZQI9S5W8e .node .label{text-align:center;}#mermaid-svg-7M25K8YZQI9S5W8e .node.clickable{cursor:pointer;}#mermaid-svg-7M25K8YZQI9S5W8e .arrowheadPath{fill:#333333;}#mermaid-svg-7M25K8YZQI9S5W8e .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-7M25K8YZQI9S5W8e .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-7M25K8YZQI9S5W8e .edgeLabel{background-color:#e8e8e8;text-align:center;}#mermaid-svg-7M25K8YZQI9S5W8e .edgeLabel rect{opacity:0.5;background-color:#e8e8e8;fill:#e8e8e8;}#mermaid-svg-7M25K8YZQI9S5W8e .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-7M25K8YZQI9S5W8e .cluster text{fill:#333;}#mermaid-svg-7M25K8YZQI9S5W8e .cluster span{color:#333;}#mermaid-svg-7M25K8YZQI9S5W8e div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-7M25K8YZQI9S5W8e :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}

A
B
C

在中间添加文本的方法

  1. -- + 文本 + 基本单元
  2. 基本单元 + |文本|

中间添加文本的方法

flowchart LR
A -- TEXT --- B
D -- TEXT --> EB ---|TEXT|C
C -->|TEXT|D

#mermaid-svg-nfSJvgMHpIEWYZOp {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-nfSJvgMHpIEWYZOp .error-icon{fill:#552222;}#mermaid-svg-nfSJvgMHpIEWYZOp .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-nfSJvgMHpIEWYZOp .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-nfSJvgMHpIEWYZOp .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-nfSJvgMHpIEWYZOp .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-nfSJvgMHpIEWYZOp .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-nfSJvgMHpIEWYZOp .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-nfSJvgMHpIEWYZOp .marker{fill:#333333;stroke:#333333;}#mermaid-svg-nfSJvgMHpIEWYZOp .marker.cross{stroke:#333333;}#mermaid-svg-nfSJvgMHpIEWYZOp svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-nfSJvgMHpIEWYZOp .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-nfSJvgMHpIEWYZOp .cluster-label text{fill:#333;}#mermaid-svg-nfSJvgMHpIEWYZOp .cluster-label span{color:#333;}#mermaid-svg-nfSJvgMHpIEWYZOp .label text,#mermaid-svg-nfSJvgMHpIEWYZOp span{fill:#333;color:#333;}#mermaid-svg-nfSJvgMHpIEWYZOp .node rect,#mermaid-svg-nfSJvgMHpIEWYZOp .node circle,#mermaid-svg-nfSJvgMHpIEWYZOp .node ellipse,#mermaid-svg-nfSJvgMHpIEWYZOp .node polygon,#mermaid-svg-nfSJvgMHpIEWYZOp .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-nfSJvgMHpIEWYZOp .node .label{text-align:center;}#mermaid-svg-nfSJvgMHpIEWYZOp .node.clickable{cursor:pointer;}#mermaid-svg-nfSJvgMHpIEWYZOp .arrowheadPath{fill:#333333;}#mermaid-svg-nfSJvgMHpIEWYZOp .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-nfSJvgMHpIEWYZOp .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-nfSJvgMHpIEWYZOp .edgeLabel{background-color:#e8e8e8;text-align:center;}#mermaid-svg-nfSJvgMHpIEWYZOp .edgeLabel rect{opacity:0.5;background-color:#e8e8e8;fill:#e8e8e8;}#mermaid-svg-nfSJvgMHpIEWYZOp .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-nfSJvgMHpIEWYZOp .cluster text{fill:#333;}#mermaid-svg-nfSJvgMHpIEWYZOp .cluster span{color:#333;}#mermaid-svg-nfSJvgMHpIEWYZOp div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-nfSJvgMHpIEWYZOp :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}

TEXT
TEXT
TEXT
TEXT
A
B
C
D
E

虚线

基本单元: -.- -.->

flowchart LR
A -.- B
B -.-> C

#mermaid-svg-xAysv3T1VP2pOue9 {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-xAysv3T1VP2pOue9 .error-icon{fill:#552222;}#mermaid-svg-xAysv3T1VP2pOue9 .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-xAysv3T1VP2pOue9 .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-xAysv3T1VP2pOue9 .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-xAysv3T1VP2pOue9 .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-xAysv3T1VP2pOue9 .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-xAysv3T1VP2pOue9 .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-xAysv3T1VP2pOue9 .marker{fill:#333333;stroke:#333333;}#mermaid-svg-xAysv3T1VP2pOue9 .marker.cross{stroke:#333333;}#mermaid-svg-xAysv3T1VP2pOue9 svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-xAysv3T1VP2pOue9 .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-xAysv3T1VP2pOue9 .cluster-label text{fill:#333;}#mermaid-svg-xAysv3T1VP2pOue9 .cluster-label span{color:#333;}#mermaid-svg-xAysv3T1VP2pOue9 .label text,#mermaid-svg-xAysv3T1VP2pOue9 span{fill:#333;color:#333;}#mermaid-svg-xAysv3T1VP2pOue9 .node rect,#mermaid-svg-xAysv3T1VP2pOue9 .node circle,#mermaid-svg-xAysv3T1VP2pOue9 .node ellipse,#mermaid-svg-xAysv3T1VP2pOue9 .node polygon,#mermaid-svg-xAysv3T1VP2pOue9 .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-xAysv3T1VP2pOue9 .node .label{text-align:center;}#mermaid-svg-xAysv3T1VP2pOue9 .node.clickable{cursor:pointer;}#mermaid-svg-xAysv3T1VP2pOue9 .arrowheadPath{fill:#333333;}#mermaid-svg-xAysv3T1VP2pOue9 .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-xAysv3T1VP2pOue9 .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-xAysv3T1VP2pOue9 .edgeLabel{background-color:#e8e8e8;text-align:center;}#mermaid-svg-xAysv3T1VP2pOue9 .edgeLabel rect{opacity:0.5;background-color:#e8e8e8;fill:#e8e8e8;}#mermaid-svg-xAysv3T1VP2pOue9 .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-xAysv3T1VP2pOue9 .cluster text{fill:#333;}#mermaid-svg-xAysv3T1VP2pOue9 .cluster span{color:#333;}#mermaid-svg-xAysv3T1VP2pOue9 div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-xAysv3T1VP2pOue9 :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}

A
B
C

添加文本的方法

flowchart LR
A -.TEXT.- B

#mermaid-svg-Y4hzuZqHrR5BQkEb {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-Y4hzuZqHrR5BQkEb .error-icon{fill:#552222;}#mermaid-svg-Y4hzuZqHrR5BQkEb .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-Y4hzuZqHrR5BQkEb .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-Y4hzuZqHrR5BQkEb .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-Y4hzuZqHrR5BQkEb .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-Y4hzuZqHrR5BQkEb .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-Y4hzuZqHrR5BQkEb .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-Y4hzuZqHrR5BQkEb .marker{fill:#333333;stroke:#333333;}#mermaid-svg-Y4hzuZqHrR5BQkEb .marker.cross{stroke:#333333;}#mermaid-svg-Y4hzuZqHrR5BQkEb svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-Y4hzuZqHrR5BQkEb .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-Y4hzuZqHrR5BQkEb .cluster-label text{fill:#333;}#mermaid-svg-Y4hzuZqHrR5BQkEb .cluster-label span{color:#333;}#mermaid-svg-Y4hzuZqHrR5BQkEb .label text,#mermaid-svg-Y4hzuZqHrR5BQkEb span{fill:#333;color:#333;}#mermaid-svg-Y4hzuZqHrR5BQkEb .node rect,#mermaid-svg-Y4hzuZqHrR5BQkEb .node circle,#mermaid-svg-Y4hzuZqHrR5BQkEb .node ellipse,#mermaid-svg-Y4hzuZqHrR5BQkEb .node polygon,#mermaid-svg-Y4hzuZqHrR5BQkEb .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-Y4hzuZqHrR5BQkEb .node .label{text-align:center;}#mermaid-svg-Y4hzuZqHrR5BQkEb .node.clickable{cursor:pointer;}#mermaid-svg-Y4hzuZqHrR5BQkEb .arrowheadPath{fill:#333333;}#mermaid-svg-Y4hzuZqHrR5BQkEb .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-Y4hzuZqHrR5BQkEb .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-Y4hzuZqHrR5BQkEb .edgeLabel{background-color:#e8e8e8;text-align:center;}#mermaid-svg-Y4hzuZqHrR5BQkEb .edgeLabel rect{opacity:0.5;background-color:#e8e8e8;fill:#e8e8e8;}#mermaid-svg-Y4hzuZqHrR5BQkEb .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-Y4hzuZqHrR5BQkEb .cluster text{fill:#333;}#mermaid-svg-Y4hzuZqHrR5BQkEb .cluster span{color:#333;}#mermaid-svg-Y4hzuZqHrR5BQkEb div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-Y4hzuZqHrR5BQkEb :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}

TEXT
A
B

粗线

基本单元:=== ==>

#mermaid-svg-buP3GunU1lbeS6up {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-buP3GunU1lbeS6up .error-icon{fill:#552222;}#mermaid-svg-buP3GunU1lbeS6up .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-buP3GunU1lbeS6up .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-buP3GunU1lbeS6up .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-buP3GunU1lbeS6up .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-buP3GunU1lbeS6up .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-buP3GunU1lbeS6up .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-buP3GunU1lbeS6up .marker{fill:#333333;stroke:#333333;}#mermaid-svg-buP3GunU1lbeS6up .marker.cross{stroke:#333333;}#mermaid-svg-buP3GunU1lbeS6up svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-buP3GunU1lbeS6up .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-buP3GunU1lbeS6up .cluster-label text{fill:#333;}#mermaid-svg-buP3GunU1lbeS6up .cluster-label span{color:#333;}#mermaid-svg-buP3GunU1lbeS6up .label text,#mermaid-svg-buP3GunU1lbeS6up span{fill:#333;color:#333;}#mermaid-svg-buP3GunU1lbeS6up .node rect,#mermaid-svg-buP3GunU1lbeS6up .node circle,#mermaid-svg-buP3GunU1lbeS6up .node ellipse,#mermaid-svg-buP3GunU1lbeS6up .node polygon,#mermaid-svg-buP3GunU1lbeS6up .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-buP3GunU1lbeS6up .node .label{text-align:center;}#mermaid-svg-buP3GunU1lbeS6up .node.clickable{cursor:pointer;}#mermaid-svg-buP3GunU1lbeS6up .arrowheadPath{fill:#333333;}#mermaid-svg-buP3GunU1lbeS6up .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-buP3GunU1lbeS6up .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-buP3GunU1lbeS6up .edgeLabel{background-color:#e8e8e8;text-align:center;}#mermaid-svg-buP3GunU1lbeS6up .edgeLabel rect{opacity:0.5;background-color:#e8e8e8;fill:#e8e8e8;}#mermaid-svg-buP3GunU1lbeS6up .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-buP3GunU1lbeS6up .cluster text{fill:#333;}#mermaid-svg-buP3GunU1lbeS6up .cluster span{color:#333;}#mermaid-svg-buP3GunU1lbeS6up div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-buP3GunU1lbeS6up :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}

A
B
C

添加文本的方法(基本等同于实线):

flowchart LR
A == TEXT ===B
B == TEXT ==>C
C ===|TEXT|D
D ==>|TEXT|E

#mermaid-svg-I7AeY9t5tpry1fzN {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-I7AeY9t5tpry1fzN .error-icon{fill:#552222;}#mermaid-svg-I7AeY9t5tpry1fzN .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-I7AeY9t5tpry1fzN .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-I7AeY9t5tpry1fzN .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-I7AeY9t5tpry1fzN .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-I7AeY9t5tpry1fzN .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-I7AeY9t5tpry1fzN .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-I7AeY9t5tpry1fzN .marker{fill:#333333;stroke:#333333;}#mermaid-svg-I7AeY9t5tpry1fzN .marker.cross{stroke:#333333;}#mermaid-svg-I7AeY9t5tpry1fzN svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-I7AeY9t5tpry1fzN .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-I7AeY9t5tpry1fzN .cluster-label text{fill:#333;}#mermaid-svg-I7AeY9t5tpry1fzN .cluster-label span{color:#333;}#mermaid-svg-I7AeY9t5tpry1fzN .label text,#mermaid-svg-I7AeY9t5tpry1fzN span{fill:#333;color:#333;}#mermaid-svg-I7AeY9t5tpry1fzN .node rect,#mermaid-svg-I7AeY9t5tpry1fzN .node circle,#mermaid-svg-I7AeY9t5tpry1fzN .node ellipse,#mermaid-svg-I7AeY9t5tpry1fzN .node polygon,#mermaid-svg-I7AeY9t5tpry1fzN .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-I7AeY9t5tpry1fzN .node .label{text-align:center;}#mermaid-svg-I7AeY9t5tpry1fzN .node.clickable{cursor:pointer;}#mermaid-svg-I7AeY9t5tpry1fzN .arrowheadPath{fill:#333333;}#mermaid-svg-I7AeY9t5tpry1fzN .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-I7AeY9t5tpry1fzN .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-I7AeY9t5tpry1fzN .edgeLabel{background-color:#e8e8e8;text-align:center;}#mermaid-svg-I7AeY9t5tpry1fzN .edgeLabel rect{opacity:0.5;background-color:#e8e8e8;fill:#e8e8e8;}#mermaid-svg-I7AeY9t5tpry1fzN .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-I7AeY9t5tpry1fzN .cluster text{fill:#333;}#mermaid-svg-I7AeY9t5tpry1fzN .cluster span{color:#333;}#mermaid-svg-I7AeY9t5tpry1fzN div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-I7AeY9t5tpry1fzN :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}

TEXT
TEXT
TEXT
TEXT
A
B
C
D
E

其他线形

此部分内容仅有flowchart支持,graph不支持

flowchart LR
A --x B
B -- TEXT --x C
C --o D
D -- TEXT --o E

#mermaid-svg-JNNFgsGIIS4kDTyu {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-JNNFgsGIIS4kDTyu .error-icon{fill:#552222;}#mermaid-svg-JNNFgsGIIS4kDTyu .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-JNNFgsGIIS4kDTyu .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-JNNFgsGIIS4kDTyu .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-JNNFgsGIIS4kDTyu .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-JNNFgsGIIS4kDTyu .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-JNNFgsGIIS4kDTyu .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-JNNFgsGIIS4kDTyu .marker{fill:#333333;stroke:#333333;}#mermaid-svg-JNNFgsGIIS4kDTyu .marker.cross{stroke:#333333;}#mermaid-svg-JNNFgsGIIS4kDTyu svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-JNNFgsGIIS4kDTyu .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-JNNFgsGIIS4kDTyu .cluster-label text{fill:#333;}#mermaid-svg-JNNFgsGIIS4kDTyu .cluster-label span{color:#333;}#mermaid-svg-JNNFgsGIIS4kDTyu .label text,#mermaid-svg-JNNFgsGIIS4kDTyu span{fill:#333;color:#333;}#mermaid-svg-JNNFgsGIIS4kDTyu .node rect,#mermaid-svg-JNNFgsGIIS4kDTyu .node circle,#mermaid-svg-JNNFgsGIIS4kDTyu .node ellipse,#mermaid-svg-JNNFgsGIIS4kDTyu .node polygon,#mermaid-svg-JNNFgsGIIS4kDTyu .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-JNNFgsGIIS4kDTyu .node .label{text-align:center;}#mermaid-svg-JNNFgsGIIS4kDTyu .node.clickable{cursor:pointer;}#mermaid-svg-JNNFgsGIIS4kDTyu .arrowheadPath{fill:#333333;}#mermaid-svg-JNNFgsGIIS4kDTyu .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-JNNFgsGIIS4kDTyu .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-JNNFgsGIIS4kDTyu .edgeLabel{background-color:#e8e8e8;text-align:center;}#mermaid-svg-JNNFgsGIIS4kDTyu .edgeLabel rect{opacity:0.5;background-color:#e8e8e8;fill:#e8e8e8;}#mermaid-svg-JNNFgsGIIS4kDTyu .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-JNNFgsGIIS4kDTyu .cluster text{fill:#333;}#mermaid-svg-JNNFgsGIIS4kDTyu .cluster span{color:#333;}#mermaid-svg-JNNFgsGIIS4kDTyu div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-JNNFgsGIIS4kDTyu :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}

TEXT
TEXT
A
B
C
D
E

调整长度

可以通过调整破折号的数量调整长度

flowchart LR
A --> B
A ---> C
A ----> D

#mermaid-svg-jz6myYzhYI3gIRjE {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-jz6myYzhYI3gIRjE .error-icon{fill:#552222;}#mermaid-svg-jz6myYzhYI3gIRjE .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-jz6myYzhYI3gIRjE .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-jz6myYzhYI3gIRjE .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-jz6myYzhYI3gIRjE .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-jz6myYzhYI3gIRjE .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-jz6myYzhYI3gIRjE .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-jz6myYzhYI3gIRjE .marker{fill:#333333;stroke:#333333;}#mermaid-svg-jz6myYzhYI3gIRjE .marker.cross{stroke:#333333;}#mermaid-svg-jz6myYzhYI3gIRjE svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-jz6myYzhYI3gIRjE .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-jz6myYzhYI3gIRjE .cluster-label text{fill:#333;}#mermaid-svg-jz6myYzhYI3gIRjE .cluster-label span{color:#333;}#mermaid-svg-jz6myYzhYI3gIRjE .label text,#mermaid-svg-jz6myYzhYI3gIRjE span{fill:#333;color:#333;}#mermaid-svg-jz6myYzhYI3gIRjE .node rect,#mermaid-svg-jz6myYzhYI3gIRjE .node circle,#mermaid-svg-jz6myYzhYI3gIRjE .node ellipse,#mermaid-svg-jz6myYzhYI3gIRjE .node polygon,#mermaid-svg-jz6myYzhYI3gIRjE .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-jz6myYzhYI3gIRjE .node .label{text-align:center;}#mermaid-svg-jz6myYzhYI3gIRjE .node.clickable{cursor:pointer;}#mermaid-svg-jz6myYzhYI3gIRjE .arrowheadPath{fill:#333333;}#mermaid-svg-jz6myYzhYI3gIRjE .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-jz6myYzhYI3gIRjE .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-jz6myYzhYI3gIRjE .edgeLabel{background-color:#e8e8e8;text-align:center;}#mermaid-svg-jz6myYzhYI3gIRjE .edgeLabel rect{opacity:0.5;background-color:#e8e8e8;fill:#e8e8e8;}#mermaid-svg-jz6myYzhYI3gIRjE .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-jz6myYzhYI3gIRjE .cluster text{fill:#333;}#mermaid-svg-jz6myYzhYI3gIRjE .cluster span{color:#333;}#mermaid-svg-jz6myYzhYI3gIRjE div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-jz6myYzhYI3gIRjE :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}

A
B
C
D

其他线形的长度调整方法如下

For dotted or thick links, the characters to add are equals signs or dots, as summed up in the following table:

Length 1 2 3
Normal 实线 --- ---- -----
Normal with arrow 实线(带箭头) --> ---> ---->
Thick 粗线 === ==== =====
Thick with arrow 粗线(带箭头) ==> ===> ====>
Dotted 虚线 -.- -..- -...-
Dotted with arrow 虚线(带箭头) -.-> -..-> -...->

流程图方向 Flowchart Orientation

标志了流程图的朝向,可能的朝向代号如下(朝向代号严格区分大小写)

Possible FlowChart orientations are:

  • TB - top to bottom(从上到下)
  • TD - top-down/ same as top to bottom(从上到下)
  • BT - bottom to top(从下到上)
  • RL - right to left(从右到左)
  • LR - left to right(从左到右)

举例RL(从左到右)

flowchart RL
A --> B

#mermaid-svg-cPdvLNQY05vMLixI {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-cPdvLNQY05vMLixI .error-icon{fill:#552222;}#mermaid-svg-cPdvLNQY05vMLixI .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-cPdvLNQY05vMLixI .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-cPdvLNQY05vMLixI .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-cPdvLNQY05vMLixI .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-cPdvLNQY05vMLixI .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-cPdvLNQY05vMLixI .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-cPdvLNQY05vMLixI .marker{fill:#333333;stroke:#333333;}#mermaid-svg-cPdvLNQY05vMLixI .marker.cross{stroke:#333333;}#mermaid-svg-cPdvLNQY05vMLixI svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-cPdvLNQY05vMLixI .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-cPdvLNQY05vMLixI .cluster-label text{fill:#333;}#mermaid-svg-cPdvLNQY05vMLixI .cluster-label span{color:#333;}#mermaid-svg-cPdvLNQY05vMLixI .label text,#mermaid-svg-cPdvLNQY05vMLixI span{fill:#333;color:#333;}#mermaid-svg-cPdvLNQY05vMLixI .node rect,#mermaid-svg-cPdvLNQY05vMLixI .node circle,#mermaid-svg-cPdvLNQY05vMLixI .node ellipse,#mermaid-svg-cPdvLNQY05vMLixI .node polygon,#mermaid-svg-cPdvLNQY05vMLixI .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-cPdvLNQY05vMLixI .node .label{text-align:center;}#mermaid-svg-cPdvLNQY05vMLixI .node.clickable{cursor:pointer;}#mermaid-svg-cPdvLNQY05vMLixI .arrowheadPath{fill:#333333;}#mermaid-svg-cPdvLNQY05vMLixI .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-cPdvLNQY05vMLixI .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-cPdvLNQY05vMLixI .edgeLabel{background-color:#e8e8e8;text-align:center;}#mermaid-svg-cPdvLNQY05vMLixI .edgeLabel rect{opacity:0.5;background-color:#e8e8e8;fill:#e8e8e8;}#mermaid-svg-cPdvLNQY05vMLixI .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-cPdvLNQY05vMLixI .cluster text{fill:#333;}#mermaid-svg-cPdvLNQY05vMLixI .cluster span{color:#333;}#mermaid-svg-cPdvLNQY05vMLixI div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-cPdvLNQY05vMLixI :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}

A
B

节点合并

几个节点可以通过与运算符&来合并指向,例如

flowchart LR
起床 --> 刷牙 & 看手机 --> 上厕所

#mermaid-svg-moqzOMNtHyr811BL {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-moqzOMNtHyr811BL .error-icon{fill:#552222;}#mermaid-svg-moqzOMNtHyr811BL .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-moqzOMNtHyr811BL .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-moqzOMNtHyr811BL .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-moqzOMNtHyr811BL .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-moqzOMNtHyr811BL .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-moqzOMNtHyr811BL .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-moqzOMNtHyr811BL .marker{fill:#333333;stroke:#333333;}#mermaid-svg-moqzOMNtHyr811BL .marker.cross{stroke:#333333;}#mermaid-svg-moqzOMNtHyr811BL svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-moqzOMNtHyr811BL .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-moqzOMNtHyr811BL .cluster-label text{fill:#333;}#mermaid-svg-moqzOMNtHyr811BL .cluster-label span{color:#333;}#mermaid-svg-moqzOMNtHyr811BL .label text,#mermaid-svg-moqzOMNtHyr811BL span{fill:#333;color:#333;}#mermaid-svg-moqzOMNtHyr811BL .node rect,#mermaid-svg-moqzOMNtHyr811BL .node circle,#mermaid-svg-moqzOMNtHyr811BL .node ellipse,#mermaid-svg-moqzOMNtHyr811BL .node polygon,#mermaid-svg-moqzOMNtHyr811BL .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-moqzOMNtHyr811BL .node .label{text-align:center;}#mermaid-svg-moqzOMNtHyr811BL .node.clickable{cursor:pointer;}#mermaid-svg-moqzOMNtHyr811BL .arrowheadPath{fill:#333333;}#mermaid-svg-moqzOMNtHyr811BL .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-moqzOMNtHyr811BL .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-moqzOMNtHyr811BL .edgeLabel{background-color:#e8e8e8;text-align:center;}#mermaid-svg-moqzOMNtHyr811BL .edgeLabel rect{opacity:0.5;background-color:#e8e8e8;fill:#e8e8e8;}#mermaid-svg-moqzOMNtHyr811BL .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-moqzOMNtHyr811BL .cluster text{fill:#333;}#mermaid-svg-moqzOMNtHyr811BL .cluster span{color:#333;}#mermaid-svg-moqzOMNtHyr811BL div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-moqzOMNtHyr811BL :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}

起床
刷牙
看手机
上厕所

以上也可以不使用与运算符来完成,例如:

flowchart LR
起床 --> 刷牙
起床 --> 看手机
刷牙 --> 上厕所
看手机 --> 上厕所

#mermaid-svg-iJU5u8F2PBhoAZph {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-iJU5u8F2PBhoAZph .error-icon{fill:#552222;}#mermaid-svg-iJU5u8F2PBhoAZph .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-iJU5u8F2PBhoAZph .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-iJU5u8F2PBhoAZph .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-iJU5u8F2PBhoAZph .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-iJU5u8F2PBhoAZph .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-iJU5u8F2PBhoAZph .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-iJU5u8F2PBhoAZph .marker{fill:#333333;stroke:#333333;}#mermaid-svg-iJU5u8F2PBhoAZph .marker.cross{stroke:#333333;}#mermaid-svg-iJU5u8F2PBhoAZph svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-iJU5u8F2PBhoAZph .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-iJU5u8F2PBhoAZph .cluster-label text{fill:#333;}#mermaid-svg-iJU5u8F2PBhoAZph .cluster-label span{color:#333;}#mermaid-svg-iJU5u8F2PBhoAZph .label text,#mermaid-svg-iJU5u8F2PBhoAZph span{fill:#333;color:#333;}#mermaid-svg-iJU5u8F2PBhoAZph .node rect,#mermaid-svg-iJU5u8F2PBhoAZph .node circle,#mermaid-svg-iJU5u8F2PBhoAZph .node ellipse,#mermaid-svg-iJU5u8F2PBhoAZph .node polygon,#mermaid-svg-iJU5u8F2PBhoAZph .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-iJU5u8F2PBhoAZph .node .label{text-align:center;}#mermaid-svg-iJU5u8F2PBhoAZph .node.clickable{cursor:pointer;}#mermaid-svg-iJU5u8F2PBhoAZph .arrowheadPath{fill:#333333;}#mermaid-svg-iJU5u8F2PBhoAZph .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-iJU5u8F2PBhoAZph .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-iJU5u8F2PBhoAZph .edgeLabel{background-color:#e8e8e8;text-align:center;}#mermaid-svg-iJU5u8F2PBhoAZph .edgeLabel rect{opacity:0.5;background-color:#e8e8e8;fill:#e8e8e8;}#mermaid-svg-iJU5u8F2PBhoAZph .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-iJU5u8F2PBhoAZph .cluster text{fill:#333;}#mermaid-svg-iJU5u8F2PBhoAZph .cluster span{color:#333;}#mermaid-svg-iJU5u8F2PBhoAZph div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-iJU5u8F2PBhoAZph :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}

起床
刷牙
看手机
上厕所

可以看出与运算符在这里的使用旨在简化

子图 subgraph

通过subgraph 和 end 来标记一块子图,举例如下

flowchart LR
水井 -- 水 --> 给人喝 & 饮料厂subgraph 做饮料其他原料 --> 饮料厂饮料厂 --> 饮料end

#mermaid-svg-9LEnaYxiwI1QsoHP {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-9LEnaYxiwI1QsoHP .error-icon{fill:#552222;}#mermaid-svg-9LEnaYxiwI1QsoHP .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-9LEnaYxiwI1QsoHP .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-9LEnaYxiwI1QsoHP .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-9LEnaYxiwI1QsoHP .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-9LEnaYxiwI1QsoHP .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-9LEnaYxiwI1QsoHP .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-9LEnaYxiwI1QsoHP .marker{fill:#333333;stroke:#333333;}#mermaid-svg-9LEnaYxiwI1QsoHP .marker.cross{stroke:#333333;}#mermaid-svg-9LEnaYxiwI1QsoHP svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-9LEnaYxiwI1QsoHP .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-9LEnaYxiwI1QsoHP .cluster-label text{fill:#333;}#mermaid-svg-9LEnaYxiwI1QsoHP .cluster-label span{color:#333;}#mermaid-svg-9LEnaYxiwI1QsoHP .label text,#mermaid-svg-9LEnaYxiwI1QsoHP span{fill:#333;color:#333;}#mermaid-svg-9LEnaYxiwI1QsoHP .node rect,#mermaid-svg-9LEnaYxiwI1QsoHP .node circle,#mermaid-svg-9LEnaYxiwI1QsoHP .node ellipse,#mermaid-svg-9LEnaYxiwI1QsoHP .node polygon,#mermaid-svg-9LEnaYxiwI1QsoHP .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-9LEnaYxiwI1QsoHP .node .label{text-align:center;}#mermaid-svg-9LEnaYxiwI1QsoHP .node.clickable{cursor:pointer;}#mermaid-svg-9LEnaYxiwI1QsoHP .arrowheadPath{fill:#333333;}#mermaid-svg-9LEnaYxiwI1QsoHP .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-9LEnaYxiwI1QsoHP .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-9LEnaYxiwI1QsoHP .edgeLabel{background-color:#e8e8e8;text-align:center;}#mermaid-svg-9LEnaYxiwI1QsoHP .edgeLabel rect{opacity:0.5;background-color:#e8e8e8;fill:#e8e8e8;}#mermaid-svg-9LEnaYxiwI1QsoHP .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-9LEnaYxiwI1QsoHP .cluster text{fill:#333;}#mermaid-svg-9LEnaYxiwI1QsoHP .cluster span{color:#333;}#mermaid-svg-9LEnaYxiwI1QsoHP div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-9LEnaYxiwI1QsoHP :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}

做饮料
饮料厂
其他原料
饮料
水井
给人喝

也可以将子表的名称和显示名称分开,另外,子表本身也可以作为一个单位被指向或者指向别的单位

flowchart LR
a --> b
a --> d
d --> subgraph1
subgraph1 --> subgraph2subgraph subgraph2[two]d --> fendsubgraph subgraph1[one]b --> cend

#mermaid-svg-aCKVsAmN2BpGCWYl {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-aCKVsAmN2BpGCWYl .error-icon{fill:#552222;}#mermaid-svg-aCKVsAmN2BpGCWYl .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-aCKVsAmN2BpGCWYl .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-aCKVsAmN2BpGCWYl .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-aCKVsAmN2BpGCWYl .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-aCKVsAmN2BpGCWYl .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-aCKVsAmN2BpGCWYl .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-aCKVsAmN2BpGCWYl .marker{fill:#333333;stroke:#333333;}#mermaid-svg-aCKVsAmN2BpGCWYl .marker.cross{stroke:#333333;}#mermaid-svg-aCKVsAmN2BpGCWYl svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-aCKVsAmN2BpGCWYl .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-aCKVsAmN2BpGCWYl .cluster-label text{fill:#333;}#mermaid-svg-aCKVsAmN2BpGCWYl .cluster-label span{color:#333;}#mermaid-svg-aCKVsAmN2BpGCWYl .label text,#mermaid-svg-aCKVsAmN2BpGCWYl span{fill:#333;color:#333;}#mermaid-svg-aCKVsAmN2BpGCWYl .node rect,#mermaid-svg-aCKVsAmN2BpGCWYl .node circle,#mermaid-svg-aCKVsAmN2BpGCWYl .node ellipse,#mermaid-svg-aCKVsAmN2BpGCWYl .node polygon,#mermaid-svg-aCKVsAmN2BpGCWYl .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-aCKVsAmN2BpGCWYl .node .label{text-align:center;}#mermaid-svg-aCKVsAmN2BpGCWYl .node.clickable{cursor:pointer;}#mermaid-svg-aCKVsAmN2BpGCWYl .arrowheadPath{fill:#333333;}#mermaid-svg-aCKVsAmN2BpGCWYl .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-aCKVsAmN2BpGCWYl .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-aCKVsAmN2BpGCWYl .edgeLabel{background-color:#e8e8e8;text-align:center;}#mermaid-svg-aCKVsAmN2BpGCWYl .edgeLabel rect{opacity:0.5;background-color:#e8e8e8;fill:#e8e8e8;}#mermaid-svg-aCKVsAmN2BpGCWYl .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-aCKVsAmN2BpGCWYl .cluster text{fill:#333;}#mermaid-svg-aCKVsAmN2BpGCWYl .cluster span{color:#333;}#mermaid-svg-aCKVsAmN2BpGCWYl div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-aCKVsAmN2BpGCWYl :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}

one
two
c
b
f
d
a

子图的方向可以单独规定,此为后续版本更新,8.8.3不适用

flowchart LRsubgraph TOPdirection TBsubgraph B1direction RLi1 -->f1endsubgraph B2direction BTi2 -->f2endendA --> TOP --> BB1 --> B2

理论应为如下形状

样式 styling

节点样式 styling for nodes

可以这样单独定义节点样式

flowchart LRid1(Start)-->id2(Stop)style id1 fill:#f9f, stroke:#333, stroke-width:4pxstyle id2 fill:#bbf, stroke:#f66, stroke-width:2px, color:#fff, stroke-dasharray: 5 5

#mermaid-svg-yGqXa4kLQLbuAgdd {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-yGqXa4kLQLbuAgdd .error-icon{fill:#552222;}#mermaid-svg-yGqXa4kLQLbuAgdd .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-yGqXa4kLQLbuAgdd .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-yGqXa4kLQLbuAgdd .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-yGqXa4kLQLbuAgdd .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-yGqXa4kLQLbuAgdd .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-yGqXa4kLQLbuAgdd .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-yGqXa4kLQLbuAgdd .marker{fill:#333333;stroke:#333333;}#mermaid-svg-yGqXa4kLQLbuAgdd .marker.cross{stroke:#333333;}#mermaid-svg-yGqXa4kLQLbuAgdd svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-yGqXa4kLQLbuAgdd .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-yGqXa4kLQLbuAgdd .cluster-label text{fill:#333;}#mermaid-svg-yGqXa4kLQLbuAgdd .cluster-label span{color:#333;}#mermaid-svg-yGqXa4kLQLbuAgdd .label text,#mermaid-svg-yGqXa4kLQLbuAgdd span{fill:#333;color:#333;}#mermaid-svg-yGqXa4kLQLbuAgdd .node rect,#mermaid-svg-yGqXa4kLQLbuAgdd .node circle,#mermaid-svg-yGqXa4kLQLbuAgdd .node ellipse,#mermaid-svg-yGqXa4kLQLbuAgdd .node polygon,#mermaid-svg-yGqXa4kLQLbuAgdd .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-yGqXa4kLQLbuAgdd .node .label{text-align:center;}#mermaid-svg-yGqXa4kLQLbuAgdd .node.clickable{cursor:pointer;}#mermaid-svg-yGqXa4kLQLbuAgdd .arrowheadPath{fill:#333333;}#mermaid-svg-yGqXa4kLQLbuAgdd .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-yGqXa4kLQLbuAgdd .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-yGqXa4kLQLbuAgdd .edgeLabel{background-color:#e8e8e8;text-align:center;}#mermaid-svg-yGqXa4kLQLbuAgdd .edgeLabel rect{opacity:0.5;background-color:#e8e8e8;fill:#e8e8e8;}#mermaid-svg-yGqXa4kLQLbuAgdd .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-yGqXa4kLQLbuAgdd .cluster text{fill:#333;}#mermaid-svg-yGqXa4kLQLbuAgdd .cluster span{color:#333;}#mermaid-svg-yGqXa4kLQLbuAgdd div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-yGqXa4kLQLbuAgdd :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}

Start
Stop

也可以预先定义节点样式

flowchart TDA(样式1):::class_one --> B ==> c(也是样式1):::class_one%% 样式单独定义classDef class_one fill:#f96, stroke:111, stroke-width:3px

#mermaid-svg-opOtM7QfDgYqr0O3 {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-opOtM7QfDgYqr0O3 .error-icon{fill:#552222;}#mermaid-svg-opOtM7QfDgYqr0O3 .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-opOtM7QfDgYqr0O3 .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-opOtM7QfDgYqr0O3 .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-opOtM7QfDgYqr0O3 .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-opOtM7QfDgYqr0O3 .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-opOtM7QfDgYqr0O3 .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-opOtM7QfDgYqr0O3 .marker{fill:#333333;stroke:#333333;}#mermaid-svg-opOtM7QfDgYqr0O3 .marker.cross{stroke:#333333;}#mermaid-svg-opOtM7QfDgYqr0O3 svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-opOtM7QfDgYqr0O3 .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-opOtM7QfDgYqr0O3 .cluster-label text{fill:#333;}#mermaid-svg-opOtM7QfDgYqr0O3 .cluster-label span{color:#333;}#mermaid-svg-opOtM7QfDgYqr0O3 .label text,#mermaid-svg-opOtM7QfDgYqr0O3 span{fill:#333;color:#333;}#mermaid-svg-opOtM7QfDgYqr0O3 .node rect,#mermaid-svg-opOtM7QfDgYqr0O3 .node circle,#mermaid-svg-opOtM7QfDgYqr0O3 .node ellipse,#mermaid-svg-opOtM7QfDgYqr0O3 .node polygon,#mermaid-svg-opOtM7QfDgYqr0O3 .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-opOtM7QfDgYqr0O3 .node .label{text-align:center;}#mermaid-svg-opOtM7QfDgYqr0O3 .node.clickable{cursor:pointer;}#mermaid-svg-opOtM7QfDgYqr0O3 .arrowheadPath{fill:#333333;}#mermaid-svg-opOtM7QfDgYqr0O3 .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-opOtM7QfDgYqr0O3 .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-opOtM7QfDgYqr0O3 .edgeLabel{background-color:#e8e8e8;text-align:center;}#mermaid-svg-opOtM7QfDgYqr0O3 .edgeLabel rect{opacity:0.5;background-color:#e8e8e8;fill:#e8e8e8;}#mermaid-svg-opOtM7QfDgYqr0O3 .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-opOtM7QfDgYqr0O3 .cluster text{fill:#333;}#mermaid-svg-opOtM7QfDgYqr0O3 .cluster span{color:#333;}#mermaid-svg-opOtM7QfDgYqr0O3 div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-opOtM7QfDgYqr0O3 :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}#mermaid-svg-opOtM7QfDgYqr0O3 .class_one>*{fill:#f96!important;stroke:111!important;stroke-width:3px!important;}#mermaid-svg-opOtM7QfDgYqr0O3 .class_one span{fill:#f96!important;stroke:111!important;stroke-width:3px!important;}

样式1
B
也是样式1

相关连接

其他教程链接:
【Mermaid 语法详细教程 02】时序图 SequenceDiagram_NoEatMe的博客-CSDN博客

主要参考资料:
About Mermaid | Mermaid

【Mermaid 语法详细教程 01】 流程图(Flowchart / graph)相关推荐

  1. 环信WebIM 超详细教程01:点对点单聊

    环信WebIM 超详细教程01:点对点单聊 第一个单聊(点对点)Demo 前言 一,准备工作:注册->登录->创建应用->创建应用用户 二,搭建工程,实现简单的单聊(点对点)功能 三 ...

  2. 手把手教你搭建Pytest+Allure2.X环境详细教程 - 01

    缺陷聚集的位置,执行时间表的外观以及许多其他方便的事情.魅力的模块化和可扩展性确保您始终可以微调某些东西,以使魅力更适合您. 一睹Allure风采 在展开Allure详述前,先上一份测试报告,报告主要 ...

  3. Mermaid语法绘制图表

    Typora 在画图方面的小技巧Mermaid,Mermaid是一种简单的类似 Markdown 的脚本语言,通过 JavaScript 编程语言,将文本转换为图片,支持绘制非常多种类的图,常见的有时 ...

  4. Markdown 里 mermaid 流程图(flowchart)教程

    作者: Jintao 日期:2021-7-12 简介: 未完待续 Markdown 里 mermaid 流程图flowchart教程 前言: 1.0 流程图的方向 TD LR BT RL 2.0 节点 ...

  5. markdown 流程图js_在Markdown中用mermaid语法绘制图表

    Python数据挖掘与文本分析&Stata应用能力提升与实证前沿云特训~ Mermaid可以用文本方式绘制图表和流程图,相比Visio而言更加的轻量便捷,此外Markdown内部支持Merma ...

  6. NLog详细教程-2022/12/01

    这里写目录标题 NLog详细教程 NLog的具体介绍,功能,优点等网上一大推,就不具体介绍了,主要说怎么安装使用 安装 需要安装NuGet包. 初级使用 配置文件编写 NLog配置原理 NLog配置文 ...

  7. mermaid流程图工具_基于 Mermaid 的时序图、流程图和甘特图

    简介 Mermaid 是一个用于画流程图.状态图.时序图.甘特图的库,使用 JS 进行本地渲染,广泛集成于许多 Markdown 编辑器中. 之前用过 PlantUML,但是发现这个东西的实现原理是生 ...

  8. linux es数据库 head,centos7安装Elasticsearch及Es-head插件详细教程(图文)

    懒惰了很久,今天来写一下Elasticsearch在centos7上安装教程以及安装过程中可能出现的报错解决方式,有不对的地方,烦请各位看官多多指教! 一.ES安装 1.环境检查 确保有java环境, ...

  9. Markdown 入门及语法详细指南 ★

    文章目录 Markdown 简介 Markdown 编辑工具 1. 平台集成 2. 独立软件 3. 插件拓展 Markdown 基本语法 快捷键 1. 标题 2. 文本 3. 列表 4. 引用 5. ...

最新文章

  1. Linux目录结构 Linux分区、挂载点
  2. 计算机网络-信道的极限容量
  3. python中keyboardinterrupt_如何防止代码块在Python中被KeyboardInterrupt中断?
  4. OA项目实战(二) 开发准备
  5. P4309-[TJOI2013]最长上升子序列【Splay】
  6. 重新学习Ubuntu -- 截图软件的选择和安装
  7. lte核心网由哪些设备组成_电气设备安装工程由哪些部分组成?
  8. webkit-box translate 的组合--流畅的滑动体验
  9. AndroidStudio安卓原生开发_UI高级_StateListDrawable状态选择器_按钮按下和抬起显示不同颜色---Android原生开发工作笔记124
  10. 互联网公司的黑话,你都经历过吗?
  11. 大繁至简,首度揭秘阿里云飞天洛神系统
  12. 日语语音识别_日语语音识别软件_日语语音识别在线 - 云+社区 - 腾讯云
  13. 用Python做一只真·多足机器人,钢铁蜈蚣能弯曲还能蠕动
  14. python 面向对象 搬家具实例
  15. 朴灵和阮一峰吵架的代码
  16. shopify上传商品价格怎么改美元美金$
  17. 飞书开放平台Java-Sdk
  18. DEPICT实现基因优化(gene prioritization)、gene set富集分析(geneset enrichment)、组织富集分析(tissue enrichment)...
  19. 网络硬盘 excel服务器,Excel Server Tutorial
  20. cdr文字内容显示不出来_电脑装的字体cdr里面不显示怎么办

热门文章

  1. 【最受欢迎最容易理解的初阶c语言教学】4.操作符和常见关键字
  2. 管理者的人品的重要性
  3. Linux常用命令——pstack命令
  4. 【自然语言处理与文本分析】用两个项目案例介绍文本挖掘方法论。
  5. [关键字]volatile
  6. 什么是金手指,金手指的设计要求有哪些?
  7. Python爬虫--喜马拉雅音频爬取
  8. Android开发,你所不知道的Android原生开发的现状
  9. 【python】控制鼠标定时移动 防止屏幕锁定 并生成可执行文件exe
  10. 2022不一样的分享--行走的皮卡丘