Différences entre les versions de « Mermaid - graph »

De Semantic MediaWiki - Sandbox

(add)
(chg)
 
(17 versions intermédiaires par 2 utilisateurs non affichées)
Ligne 1 : Ligne 1 :
This page holds examples for the [[mw:Extension:Mermaid|Mermaid]] extension. See also [https://mermaidjs.github.io/ mermaidjs.github.io] for further documentation.
+
<big>→ Back to [[Mermaid|Mermaid overview]]</big>
 
+
<div style="float: right">__TOC__</div>
== example 1 - graph ==
+
== Graph example ==
 
; Syntax
 
; Syntax
 
<pre>
 
<pre>
Ligne 11 : Ligne 11 :
 
}}
 
}}
 
</pre>
 
</pre>
 +
 
; Result
 
; Result
 
{{#mermaid:graph TD;
 
{{#mermaid:graph TD;
Ligne 19 : Ligne 20 :
 
}}
 
}}
  
== example 2 - sequence diagram ==
+
== Wide top-down graph example ==
 +
 
 +
''Note that, <abbr title="15 September 2021">as of this writing</abbr>, an issue exists where the leftmost unlabelled edge is sometimes cut off in the rendered diagram.''
 +
 
 +
See also:
 +
* https://github.com/SemanticMediaWiki/Mermaid/issues/73
 +
* [https://github.com/mermaid-js/mermaid/issues/1288 this mermaid.js issue] and [https://github.com/mermaid-js/mermaid/pull/1333 the assocated PR] on GitHub
 +
 
 
; Syntax
 
; Syntax
 +
 
<pre>
 
<pre>
{{#mermaid:sequenceDiagram
+
{{#mermaid:graph TD
participant Alice
+
  A[input files] --> B[pipeline]
participant Bob
+
  B --> C[output 1]
Alice->John: Hello John, how are you?
+
  B --> D[output 2]
loop Healthcheck
+
  C --> E[post-process 1]
   John->John: Fight against hypochondria
+
   C --> F[post-process 2]
end
+
  C --> G[post-process 2]
Note right of John: Rational thoughts <br/>prevail...
+
  D --> G[post-process 2]
   John-->Alice: Great!
+
  C --> H[display]
   John->Bob: How about you?
+
  D --> H[dipslay]
   Bob-->John: Jolly good!
+
   B --> I[summary]
 +
   E --> I[summary]
 +
  F --> I[summary]
 +
  G --> I[summary]
 +
   H --> I[summary]
 
}}
 
}}
 
</pre>
 
</pre>
 +
 
; Result
 
; Result
{{#mermaid:sequenceDiagram
+
{{#mermaid:graph TD
participant Alice
+
A[input files] --> B[pipeline]
participant Bob
+
B --> C[output 1]
  Alice->John: Hello John, how are you?
+
  B --> D[output 2]
  loop Healthcheck
+
  C --> E[post-process 1]
  John->John: Fight against hypochondria
+
C --> F[post-process 2]
  end
+
  C --> G[post-process 2]
  Note right of John: Rational thoughts <br/>prevail...
+
  D --> G[post-process 2]
  John-->Alice: Great!
+
C --> H[display]
  John->Bob: How about you?
+
D --> H[dipslay]
  Bob-->John: Jolly good!
+
B --> I[summary]
 +
E --> I[summary]
 +
F --> I[summary]
 +
G --> I[summary]
 +
H --> I[summary]
 
}}
 
}}
  
== example 3 - gantt chart ==
+
===Workaround using a subgraph===
 +
 
 +
''Not optimal, because the subgraph gets styled with a solid color background, but theoretically this could be overridden with CSS or [https://mermaid-js.github.io/mermaid/#/theming?id=flowchart theme variables].''
 +
 
 
; Syntax
 
; Syntax
 
<pre>
 
<pre>
{{#mermaid:gantt
+
{{#mermaid: config.flowchart.useMaxWidth=true | graph TD
  dateFormat YYYY-MM-DD
+
  subgraph &nbsp;
  title Adding GANTT diagram functionality to mermaid
+
  A[input files] --> B[pipeline]
  section A section
+
  B --> C[output 1]
  Completed task            :done,    des1, 2014-01-06,2014-01-08
+
  B --> D[output 2]
  Active task              :active,  des2, 2014-01-09, 3d
+
  C --> E[post-process 1]
  Future task              :        des3, after des2, 5d
+
C --> F[post-process 2]
  Future task2              :        des4, after des3, 5d
+
  C --> G[post-process 2]
  section Critical tasks
+
  D --> G[post-process 2]
  Completed task in the critical line :crit, done, 2014-01-06,24h
+
  C --> H[display]
  Implement parser and jison          :crit, done, after des1, 2d
+
  D --> H[dipslay]
  Create tests for parser            :crit, active, 3d
+
  B --> I[summary]
  Future task in critical line        :crit, 5d
+
  E --> I[summary]
  Create tests for renderer          :2d
+
  F --> I[summary]
  Add to mermaid                      :1d
+
  G --> I[summary]
 +
  H --> I[summary]
 +
  end
 
}}
 
}}
 
</pre>
 
</pre>
 +
 
; Result
 
; Result
{{#mermaid:gantt
+
 
  dateFormat YYYY-MM-DD
+
{{#mermaid: config.flowchart.useMaxWidth=true <!-- https://mermaid-js.github.io/mermaid/#/Setup --> | graph TD
title Adding GANTT diagram functionality to mermaid
+
  %%{init: {'theme': 'base'{{<nowiki>))</nowiki>}}%%
section A section
+
  subgraph &nbsp;
Completed task            :done,    des1, 2014-01-06,2014-01-08
+
  A[input files] --> B[pipeline]
Active task              :active,  des2, 2014-01-09, 3d
+
  B --> C[output 1]
Future task              :        des3, after des2, 5d
+
  B --> D[output 2]
Future task2              :        des4, after des3, 5d
+
  C --> E[post-process 1]
section Critical tasks
+
  C --> F[post-process 2]
Completed task in the critical line :crit, done, 2014-01-06,24h
+
  C --> G[post-process 2]
Implement parser and jison          :crit, done, after des1, 2d
+
  D --> G[post-process 2]
Create tests for parser            :crit, active, 3d
+
  C --> H[display]
Future task in critical line        :crit, 5d
+
  D --> H[dipslay]
Create tests for renderer          :2d
+
  B --> I[summary]
  Add to mermaid                      :1d
+
  E --> I[summary]
 +
  F --> I[summary]
 +
  G --> I[summary]
 +
  H --> I[summary]
 +
  end
 
}}
 
}}
 +
 +
{{Keywords|Keywords=mermaid;graph}}
  
 
[[Category:Mermaid examples]]
 
[[Category:Mermaid examples]]

Dernière version du 25 septembre 2021 à 19:29

→ Back to Mermaid overview

Graph example

Syntax
{{#mermaid:graph TD;
 A-->B;
 A-->C;
 B-->D;
 C-->D;
}}
Result

Wide top-down graph example

Note that, as of this writing, an issue exists where the leftmost unlabelled edge is sometimes cut off in the rendered diagram.

See also:

Syntax
{{#mermaid:graph TD
  A[input files] --> B[pipeline]
  B --> C[output 1]
  B --> D[output 2]
  C --> E[post-process 1]
  C --> F[post-process 2]
  C --> G[post-process 2]
  D --> G[post-process 2]
  C --> H[display]
  D --> H[dipslay]
  B --> I[summary]
  E --> I[summary]
  F --> I[summary]
  G --> I[summary]
  H --> I[summary]
}}
Result

Workaround using a subgraph

Not optimal, because the subgraph gets styled with a solid color background, but theoretically this could be overridden with CSS or theme variables.

Syntax
{{#mermaid: config.flowchart.useMaxWidth=true | graph TD
 subgraph  
 A[input files] --> B[pipeline]
 B --> C[output 1]
 B --> D[output 2]
 C --> E[post-process 1]
 C --> F[post-process 2]
 C --> G[post-process 2]
 D --> G[post-process 2]
 C --> H[display]
 D --> H[dipslay]
 B --> I[summary]
 E --> I[summary]
 F --> I[summary]
 G --> I[summary]
 H --> I[summary]
 end
}}
Result
Les cookies nous aident à fournir nos services. En utilisant nos services, vous acceptez notre utilisation de cookies.