Register
Process Type
Graphical expression
Mind Type
Structured expression
Note Type
Efficient expression

Diagram potekaSintaksa

Osnovna sintaksa

Diagram poteka je sestavljen iz vozlišč (geometrijskih oblik) in povezovalnih črt (puščic ali črt). Koda Mermaid določa, kako se gradijo vozlišča in povezovalne črte, ter podpira več vrst puščic, večsmerne puščice in poljubne povezave s podgrafi.

Opozorilo Če v vozlišču diagrama poteka uporabite besedo "end", prvo črko ali celotno besedo zapišite z velikimi črkami (na primer: "End" ali "END"); vnos "end" z vsemi malimi črkami povzroči napako v diagramu poteka.

Opozorilo Če pri povezovanju vozlišč diagrama poteka uporabite črko "o" ali "x" kot prvo črko, pred črko dodajte presledek ali črko zapišite z veliko začetnico (na primer: "dev--- ops", "dev---Ops").

Eno vozlišče (privzeto)

Koda
                            
Kopiraj
Vdelava
--- title: Node --- flowchart LR id
Informacije

id je tisto, kar je prikazano v polju.

Namig

Pri sintaksi za ustvarjanje diagrama poteka lahko poleg flowchart uporabite tudi graph.

Vozlišče z besedilom

Polju lahko nastavite tudi besedilo, ki se razlikuje od id. Če to storite večkrat, sistem uporabi zadnje določeno besedilo vozlišča. Poleg tega, če pozneje za vozlišče definirate povezovalno črto, lahko definicijo besedila izpustite; pri upodabljanju polja bo uporabljeno prej definirano besedilo.

Koda
                            
Kopiraj
Vdelava
--- title: Node with text --- flowchart LR id1[This is the text in the box]

Besedilo Unicode

Besedilo Unicode ovijte z dvojnimi narekovaji.

Koda
                            
Kopiraj
Vdelava
flowchart LR id["This ❤ Unicode"]

Oblika Markdown

Besedilo Markdown ovijte z dvojnimi narekovaji in povratnimi narekovaji

Koda
                            
Kopiraj
Vdelava
flowchart LR markdown["`This **is** _Markdown_`"] newLines["`Line1 Line 2 Line 3`"] markdown --> newLines

Smer

Določa smer diagrama poteka

Pomeni, da je diagram poteka razporejen od zgoraj navzdol (TD ali TB)

Koda
                            
Kopiraj
Vdelava
flowchart TD Start --> Stop

Smeri diagrama poteka vključujejo:

  • TB - od zgoraj navzdol
  • TD - od zgoraj navzdol (enako kot od zgoraj navzdol)
  • BT - od spodaj navzgor
  • RL - od desne proti levi
  • LR - od leve proti desni

Oblika vozlišča

Zaobljen pravokotnik

Koda
                            
Kopiraj
Vdelava
flowchart LR id1(This is the text in the box)

Oblika stadiona

Koda
                            
Kopiraj
Vdelava
flowchart LR id1([This is the text in the box])

Podproces

Koda
                            
Kopiraj
Vdelava
flowchart LR id1[[This is the text in the box]]

Zbirka podatkov

Koda
                            
Kopiraj
Vdelava
flowchart LR id1[(Database)]

Krog

Koda
                            
Kopiraj
Vdelava
flowchart LR id1((This is the text in the circle))

Asimetrična oblika

Koda
                            
Kopiraj
Vdelava
flowchart LR id1>This is the text in the box]

Romb

Koda
                            
Kopiraj
Vdelava
flowchart LR id1{This is the text in the box}

Šestkotnik

Koda
                            
Kopiraj
Vdelava
flowchart LR id1{{This is the text in the box}}

Paralelogram

Koda
                            
Kopiraj
Vdelava
flowchart TD id1[/This is the text in the box/]

Obrnjen paralelogram

Koda
                            
Kopiraj
Vdelava
flowchart TD id1[\This is the text in the box\]

Trapez

Koda
                            
Kopiraj
Vdelava
flowchart TD A[/ProcessOn\]

Obrnjen trapez

Koda
                            
Kopiraj
Vdelava
flowchart TD B[\ProcessOn/]

Dvojni krog

Koda
                            
Kopiraj
Vdelava
flowchart TD id1(((This is the text in the circle)))

Razširitev oblik vozlišč diagrama poteka Mermaid

Mermaid je predstavil 30 novih oblik, ki povečajo prilagodljivost in natančnost ustvarjanja diagramov poteka. Te nove oblike ponujajo več možnosti za nazorno predstavitev procesov, odločitev, dogodkov, shranjevanja podatkov in drugih elementov v diagramu poteka, s čimer izboljšajo jasnost in semantični pomen.

Nova sintaksa za definiranje oblik

Mermaid zdaj podpira splošno sintakso za definiranje vrst oblik, da bi se prilagodil vse večjemu številu oblik. Ta sintaksa vam omogoča, da vozlišču določite določeno obliko z jasno in prilagodljivo obliko zapisa.

                            
Kopiraj
Vdelava
A@{ shape: rect }

Ta sintaksa ustvari vozlišče A kot pravokotnik. Upodablja se enako kot [A] ali A.

Popoln seznam oblik vozlišč

Sledi popoln seznam novo predstavljenih oblik vozlišč z njihovimi ustreznimi pomeni, kraticami in vzdevki:

Semantično ime Sintaksa grafa Kratica sintakse Alternativa sintakse Podroben opis
Kartica Notched Rectangle notch-rect card, notched-rectangle Predstavlja kartico
Razvrščanje Hourglass hourglass collate Predstavlja operacijo razvrščanja
Komunikacijska povezava Lightning Bolt bolt com-link, lightning-bolt Komunikacijska povezava
Komentar Curly Brace brace brace-l, comment Dodaj komentar
Komentar na desni Curly Brace brace-r Dodaj komentar
Komentar z zavitima oklepajema na obeh straneh Curly Braces braces Dodaj komentar
Vnos ali izhod podatkov Lean Right lean-r in-out, lean-right Predstavlja vnos ali izhod
Vnos ali izhod podatkov Lean Left lean-l lean-left, out-in Predstavlja izhod ali vnos
Zbirka podatkov Cylinder cyl cylinder, database, db Shramba zbirke podatkov
Odločitev Diamond diam decision, diamond, question Korak odločitve
Zakasnitev Half-Rounded Rectangle delay half-rounded-rectangle Predstavlja zakasnitev
Neposredna dostopna shramba Horizontal Cylinder h-cyl das, horizontal-cylinder Neposredna dostopna shramba
Diskovna shramba Lined Cylinder lin-cyl disk, lined-cylinder Diskovna shramba
Zaslon Curved Trapezoid curv-trap curved-trapezoid, display Predstavlja prikaz informacij na zaslonu, terminalu in podobnih napravah
Deljena obdelava Divided Rectangle div-rect div-proc, divided-process, divided-rectangle Oblika deljene obdelave
Dokument Document doc document Predstavlja dokument
Dogodek Rounded Rectangle rounded event Predstavlja dogodek
Izvleček Triangle tri extract, triangle Postopek izvlečka
Razcep/združitev Filled Rectangle fork join Razcep ali združitev v diagramu poteka
Notranja shramba Window Pane win-pane internal-storage, window-pane Notranja shramba
Točka povezave Filled Circle f-circ filled-circle, junction Točka povezave
Dokument s črto Lined Document lin-doc lined-document Dokument s črto
Postopek s črto/senco Lined Rectangle lin-rect lin-proc, lined-process, lined-rectangle, shaded-process Oblika procesa s črto
Omejitev zanke Trapezoidal Pentagon notch-pent loop-limit, notched-pentagon Korak omejitve zanke
Ročna datoteka Flipped Triangle flip-tri flipped-triangle, manual-file Operacija ročne datoteke
Ročni vnos Sloped Rectangle sl-rect manual-input, sloped-rectangle Korak ročnega vnosa
Ročna operacija Trapezoid Base Top trap-t inv-trapezoid, manual, trapezoid-top Predstavlja ročno opravilo
Več dokumentov Stacked Document docs documents, st-doc, stacked-document 多个文档
Več procesov Stacked Rectangle st-rect processes, procs, stacked-rectangle 多个进程
Nepravilna oblika Odd odd Nepravilna oblika
Papirni trak Flag flag paper-tape Papirni trak
Priprava pogoja Hexagon hex hexagon, prepare Korak priprave ali pogoja
Prednostno dejanje Trapezoid Base Bottom trap-b priority, trapezoid, trapezoid-bottom Prednostno dejanje
Obdelava Rectangle rect proc, process, rectangle Standardna oblika obdelave
Začetek Circle circle circ Začetna točka
Začetek Small Circle sm-circ small-circle, start Majhen krogec kot začetek
Ustavi Double Circle dbl-circ double-circle Predstavlja točko ustavitve
Ustavi Framed Circle fr-circ framed-circle, stop Predstavlja točko ustavitve
Shranjevanje podatkov Bow Tie Rectangle bow-rect bow-tie-rectangle, stored-data Shranjevanje podatkov
Podproces Framed Rectangle fr-rect framed-rectangle, subproc, subprocess, subroutine Podproces, podprogram
Povzetek Crossed Circle cross-circ crossed-circle, summary Povzetek
Označen dokument Tagged Document tag-doc tagged-document Označen dokument
Standardiziran proces Tagged Rectangle tag-rect tag-proc, tagged-process, tagged-rectangle 已标准进程
Končna točka Stadium stadium pill, terminal Končna točka
Besedilni blok Text Block text Besedilni blok

Sledi primer kode diagrama poteka z novo predstavljenimi oblikami:

Koda
                            
Kopiraj
Vdelava
flowchart RL A@{ shape: manual-file, label: "File Handling"} B@{ shape: manual-input, label: "User Input"} C@{ shape: docs, label: "Multiple Documents"} D@{ shape: procs, label: "Process Automation"} E@{ shape: paper-tape, label: "Paper Records"}

Proces

Koda
                            
Kopiraj
Vdelava
flowchart TD A@{ shape: rect, label: "This is a process" }

Dogodek

Koda
                            
Kopiraj
Vdelava
flowchart TD A@{ shape: rounded, label: "This is an event" }

Podproces

Koda
                            
Kopiraj
Vdelava
flowchart TD A@{ shape: subproc, label: "This is a subprocess" }

Zbirka podatkov (cilinder)

Koda
                            
Kopiraj
Vdelava
flowchart TD A@{ shape: cyl, label: "Database" }

Začetek (krog)

Koda
                            
Kopiraj
Vdelava
flowchart TD A@{ shape: circle, label: "Start" }

Nepravilna oblika

Koda
                            
Kopiraj
Vdelava
flowchart TD A@{ shape: odd, label: "Odd shape" }

Odločitev (romb)

Koda
                            
Kopiraj
Vdelava
flowchart TD A@{ shape: diamond, label: "Decision" }

Priprava pogoja (šestkotnik)

Koda
                            
Kopiraj
Vdelava
flowchart TD A@{ shape: hex, label: "Prepare conditional" }

Vnos/izhod podatkov (nagnjeno v desno)

Koda
                            
Kopiraj
Vdelava
flowchart TD A@{ shape: lean-r, label: "Input/Output" }

Vnos/izhod podatkov (nagnjeno v levo)

Koda
                            
Kopiraj
Vdelava
flowchart TD A@{ shape: lean-l, label: "Input/Output" }

Prednostno dejanje (trapez)

Koda
                            
Kopiraj
Vdelava
flowchart TD A@{ shape: trap-b, label: "Priority action" }

Ročna operacija (obrnjen trapez)

Koda
                            
Kopiraj
Vdelava
flowchart TD A@{ shape: trap-t, label: "Manual operation" }

Ustavi (dvojni krog)

Koda
                            
Kopiraj
Vdelava
flowchart TD A@{ shape: dbl-circ, label: "Stop" }

Besedilni blok

Koda
                            
Kopiraj
Vdelava
flowchart TD A@{ shape: text, label: "This is a text block" }

Kartica (pravokotnik z zarezo)

Koda
                            
Kopiraj
Vdelava
flowchart TD A@{ shape: notch-rect, label: "Card" }

Proces s črto/senco

Koda
                            
Kopiraj
Vdelava
flowchart TD A@{ shape: lin-rect, label: "Lined process" }

Začetek (majhen krog)

Koda
                            
Kopiraj
Vdelava
flowchart TD A@{ shape: sm-circ, label: "Small start" }

Ustavi (krog v okvirju)

Koda
                            
Kopiraj
Vdelava
flowchart TD A@{ shape: framed-circle, label: "Stop" }

Razcep/združitev (dolg pravokotnik)

Koda
                            
Kopiraj
Vdelava
flowchart TD A@{ shape: fork, label: "Fork or Join" }

Razvrščanje (peščena ura)

Koda
                            
Kopiraj
Vdelava
flowchart TD A@{ shape: hourglass, label: "Collate" }

Komentar (zavita oklepaja)

Koda
                            
Kopiraj
Vdelava
flowchart TD A@{ shape: comment, label: "Comment" }

Komentar na desni (zavit oklepaj na desni)

Koda
                            
Kopiraj
Vdelava
flowchart TD A@{ shape: brace-r, label: "Comment" }

Komentar (oklepaja na obeh straneh)

Koda
                            
Kopiraj
Vdelava
flowchart TD A@{ shape: braces, label: "Comment" }

Komunikacijska povezava (strela)

Koda
                            
Kopiraj
Vdelava
flowchart TD A@{ shape: bolt, label: "Communication link" }

Dokument

Koda
                            
Kopiraj
Vdelava
flowchart TD A@{ shape: doc, label: "Document" }

Zakasnitev (polzaobljen pravokotnik)

Koda
                            
Kopiraj
Vdelava
flowchart TD A@{ shape: delay, label: "Delay" }

直接存取存储(水平圆柱)

Koda
                            
Kopiraj
Vdelava
flowchart TD A@{ shape: das, label: "Direct access to storage" }

Diskovna shramba (valj z utori)

Koda
                            
Kopiraj
Vdelava
flowchart TD A@{ shape: lin-cyl, label: "Disk storage" }

Zaslon (oblika zaslona)

Koda
                            
Kopiraj
Vdelava
flowchart TD A@{ shape: curv-trap, label: "Display" }

Deljena obdelava (deljen pravokotnik)

Koda
                            
Kopiraj
Vdelava
flowchart TD A@{ shape: div-rect, label: "Divided process" }

Izvleček (majhen trikotnik)

Koda
                            
Kopiraj
Vdelava
flowchart TD A@{ shape: tri, label: "Extract" }

Notranja shramba (okenska plošča)

Koda
                            
Kopiraj
Vdelava
flowchart TD A@{ shape: win-pane, label: "Internal storage" }

Točka povezave (poln krog)

Koda
                            
Kopiraj
Vdelava
flowchart TD A@{ shape: f-circ, label: "Connect" }

Dokument s črto

Koda
                            
Kopiraj
Vdelava
flowchart TD A@{ shape: lin-doc, label: "Lined document" }

Omejitev zanke (peterokotnik z zarezo)

Koda
                            
Kopiraj
Vdelava
flowchart TD A@{ shape: notch-pent, label: "Loop limit" }

Ročna datoteka (obrnjen trikotnik)

Koda
                            
Kopiraj
Vdelava
flowchart TD A@{ shape: flip-tri, label: "Manual file" }

Ročni vnos (pravokotni trapez)

Koda
                            
Kopiraj
Vdelava
flowchart TD A@{ shape: sl-rect, label: "Manual input" }

Več dokumentov (zloženi dokumenti)

Koda
                            
Kopiraj
Vdelava
flowchart TD A@{ shape: docs, label: "Multi-document" }

Več procesov (zloženi pravokotniki)

Koda
                            
Kopiraj
Vdelava
flowchart TD A@{ shape: processes, label: "Multiple processes" }

Papirni trak (zastava)

Koda
                            
Kopiraj
Vdelava
flowchart TD A@{ shape: flag, label: "Paper tape" }

Shranjevanje podatkov (pravokotnik metuljček)

Koda
                            
Kopiraj
Vdelava
flowchart TD A@{ shape: bow-rect, label: "Data stored" }

Povzetek (krog s križem)

Koda
                            
Kopiraj
Vdelava
flowchart TD A@{ shape: cross-circ, label: "Summary" }

Označen dokument

Koda
                            
Kopiraj
Vdelava
flowchart TD A@{ shape: tag-doc, label: "Tagged document" }

Označen proces

Koda
                            
Kopiraj
Vdelava
flowchart TD A@{ shape: tag-rect, label: "Tagged process" }

Posebne oblike v diagramu poteka Mermaid

Mermaid je predstavil tudi slike za izboljšanje vašega diagrama poteka, saj vam omogoča, da slike vključite neposredno v diagram poteka, kar zagotavlja več vizualnega konteksta in jasnosti.

Oblika slike

Za vstavljanje slike v diagram poteka lahko uporabite image; sintaksa za definiranje slike je naslednja:

                            
Kopiraj
Vdelava
flowchart TD A@{ img: "https://www.processon.com/image.png", label: "Image Label", pos: "t", w: 60, h: 60, constraint: "off" }

Parameter

  • img: naslov URL slike, ki naj se prikaže.
  • label: besedilna oznaka, povezana s sliko; lahko je poljuben niz. Če ni definirana, se oznaka ne prikaže.
  • pos: položaj oznake. Če ni definiran, je oznaka privzeto na dnu slike.
  • w: širina slike. Če ni definirana, je privzeto naravna širina slike.
  • h: višina slike. Če ni definirana, je privzeto naravna višina slike.
  • constraint: določa, ali slika omejuje velikost vozlišča. Ta nastavitev tudi zagotavlja, da slika ohrani prvotno razmerje stranic in višino prilagodi glede na širino. Če ni definirana, je privzeto off.

Slike zagotavljajo dodatno prilagodljivost in vizualno privlačnost vašega diagrama poteka, zaradi česar je bolj informativen in privlačen.

Povezave med vozlišči

Vozlišča je mogoče povezati s povezovalnimi črtami in puščicami. Obstajajo različne vrste povezav, na povezave pa lahko priložite tudi besedilne nize.

Povezava s puščico

Koda
                            
Kopiraj
Vdelava
flowchart LR A-->B

Odprta povezava

Koda
                            
Kopiraj
Vdelava
flowchart LR A --- B

Povezava z besedilom

Koda
                            
Kopiraj
Vdelava
flowchart LR A-- This is the text! ---B

ali

Koda
                            
Kopiraj
Vdelava
flowchart LR A --- | This is the text| B

Povezava s puščico in besedilom

Koda
                            
Kopiraj
Vdelava
flowchart LR A-->|text|B

ali

Koda
                            
Kopiraj
Vdelava
flowchart LR A-- text -->B

Črtkana povezava

Koda
                            
Kopiraj
Vdelava
flowchart LR A-.->B;

Črtkana povezava z besedilom

Koda
                            
Kopiraj
Vdelava
flowchart LR A-. text .->B;

Debela povezava

Koda
                            
Kopiraj
Vdelava
flowchart LR A ==> B

Debela povezava z besedilom

Koda
                            
Kopiraj
Vdelava
flowchart LR A == |text| ==> B

Nevidna povezava

Koda
                            
Kopiraj
Vdelava
flowchart LR A ~~~ B

Verižno povezovanje povezav

Koda
                            
Kopiraj
Vdelava
flowchart LR A -- text --> B -- text2 --> C

V isti vrstici lahko določite tudi več povezav med vozlišči, kot je prikazano spodaj:

Koda
                            
Kopiraj
Vdelava
flowchart LR a --> b & c--> d

Opisete lahko tudi odvisnosti, kot v spodnji kodi:

Koda
                            
Kopiraj
Vdelava
flowchart LR a --> b & c--> d & e--> f

Če bi isti graf opisali z osnovno sintakso, bi potrebovali 8 vrstic. Opozoriti velja, da lahko pretirana uporaba te metode oteži branje diagrama poteka v obliki Markdown.

Koda
                            
Kopiraj
Vdelava
flowchart TB a --> b a --> c b --> d b --> e c --> d c --> e d --> f e --> f

Dodajanje ID povezovalni črti

Mermaid zdaj podpira dodajanje ID povezovalnim črtam, podobno kot prilaganje ID in metapodatkov vozliščem. Ta funkcija je osnova za naprednejše možnosti oblikovanja, razredov in animacij na povezovalnih črtah.

Sintaksa:

Če želite povezovalni črti dodati ID, pred sintakso povezovalne črte napišite ID, ki mu takoj sledi znak @. Na primer:

Koda
                            
Kopiraj
Vdelava
flowchart LR A e1@--> B

V tem primeru je e1 ID povezovalne črte, ki povezuje A in B. Ta ID lahko uporabite v poznejših definicijah ali stavkih za oblikovanje, tako kot pri vozliščih.

Vklop animacije

Ko povezovalni črti dodate ID, lahko animacijo povezovalne črte vklopite z definiranjem njenih lastnosti:

Koda
                            
Kopiraj
Vdelava
flowchart LR A e1@==> B e1@{ animate: true }

To pove Mermaidu, da je povezovalna črta e1 animirana.

Izbira vrste animacije

V začetni različici sta podprti dve hitrosti animacije: fast in slow. Izbira določene vrste animacije je preprost način za vklop animacije in hkratno nastavitev hitrosti animacije.

Koda
                            
Kopiraj
Vdelava
flowchart LR A e1@--> B e1@{ animation: fast }

这相当于 e1@{ animate: true, animation: fast }。

Animacija s stavkom classDef

Povezovalni črti lahko dodate animacijo tudi tako, da ji dodelite razred in nato v stavku classDef definirate lastnosti animacije. Na primer:

Koda
                            
Kopiraj
Vdelava
flowchart LR A e1@--> B classDef animate stroke-dasharray: 9,5,stroke-dashoffset: 900,animation: dash 25s linear infinite; class e1 animate

V tej kodi:

  • e1@--> 创建了一个 ID 为 e1 的连接线
  • classDef animate definira razred z imenom animate ter sloga in lastnosti animacije.
  • class e1 animate uporabi razred animate na povezovalni črti e1.

Opomba o ubežnem vejici: pri nastavljanju lastnosti stroke-dasharray ne pozabite ubežati vejice kot ,, ker se vejica v definicijah slogov Mermaid uporablja kot ločilo.

Nova vrsta puščice

Podpora novim vrstam puščic

  • Povezovalna črta s polnim krogom
  • Povezovalna črta z oznako križa

Povezovalna črta s polnim krogom

Koda
                            
Kopiraj
Vdelava
flowchart LR A --o B

Povezovalna črta z oznako križa

Koda
                            
Kopiraj
Vdelava
flowchart LR A --x B

Večsmerna puščica

Uporabite lahko večsmerne puščice, na primer:

Koda
                            
Kopiraj
Vdelava
flowchart LR A o--o B B <--> C C x--x D

Dolžina povezovalne črte

Vsako vozlišče v diagramu poteka se glede na vozlišča, s katerimi je povezano, dodeli ravni v upodobljenem grafu, to je navpični ali vodoravni ravni (odvisno od smeri diagrama poteka). Privzeto lahko povezave prečkajo poljubno število ravni, vendar lahko z dodajanjem dodatnih pomišljajev v definicijo povezave zahtevate, da je določena povezava daljša od drugih.

V tem primeru sta v povezavo od vozlišča B do vozlišča E dodana dva dodatna pomišljaja, tako da prečka dve ravni več kot običajna povezava:

Koda
                            
Kopiraj
Vdelava
flowchart TD A[Start] --> B{Is it?} B -->|Yes| C[OK] C --> D[Rethink] D --> B B ---->|No| E[End]
Opomba: povezava je lahko daljša od števila ravni, ki jih zahteva upodobitveni pogon, da bi se prilagodila drugim zahtevam.

Ko je oznaka povezave zapisana na sredini povezave, je treba na desno stran povezave dodati dodatne pomišljaje. Ta primer je enakovreden prejšnjemu:

Koda
                            
Kopiraj
Vdelava
flowchart TD A[Start] --> B{Is it?} B -->|Yes| C[OK] C --> D[Rethink] D --> B B -- No ----> E[End]

Pri pikčastih črtah ali debelih povezavah so znaki, ki jih je treba dodati, enačaj ali pika, kot je prikazano v spodnji tabeli:

Dolžina 1 2 3
Običajna povezava --- ---- -----
Običajna povezava s puščico --> ---> ---->
Debela povezava === ==== =====
Debela povezava s puščico ==> ===> ====>
Pikčasta črta -.- -..- -...-
Pikčasta črta s puščico -.- -..-> -...->

Posebni znaki

Besedilo lahko postavite v narekovaje, da upodobite bolj zapletene znake. Kot je prikazano v spodnjem primeru:

Koda
                            
Kopiraj
Vdelava
flowchart LR id1["This is the (text) in the box"]

Kodiranje entitet za ubežne znake

Znake lahko ubežite s sintakso iz primera.

Koda
                            
Kopiraj
Vdelava
flowchart LR A["A double quote:#quot;"] --> B["A dec char:#9829;"]

Navedena števila so decimalna, zato je # mogoče kodirati kot #35. Podprta je tudi uporaba imen znakov HTML.

Podgraf

                            
Kopiraj
Vdelava
subgraph title graph definition end

Spodaj je primer:

Koda
                            
Kopiraj
Vdelava
flowchart TB c1-->a2 subgraph one a1-->a2 end subgraph two b1-->b2 end subgraph three c1-->c2 end

Podgrafu lahko nastavite tudi id.

Koda
                            
Kopiraj
Vdelava
flowchart TB c1-->a2 subgraph ide1 [one] a1-->a2 end

Diagram poteka

Pri grafih tipa diagram poteka lahko nastavite povezovalne črte v podgraf in iz njega, kot v spodnjem diagramu poteka.

Koda
                            
Kopiraj
Vdelava
flowchart TB c1-->a2 subgraph one a1-->a2 end subgraph two b1-->b2 end subgraph three c1-->c2 end one --> two three --> two two --> c2

Smer podgrafa

Pri uporabi tipa diagram poteka lahko s stavkom za smer nastavite smer upodabljanja podgrafa, kot je prikazano spodaj:

Koda
                            
Kopiraj
Vdelava
flowchart LR subgraph TOP direction TB subgraph B1 direction RL i1 -->f1 end subgraph B2 direction BT i2 -->f2 end end A --> TOP --> B B1 --> B2

Omejitve

Če je katero koli vozlišče podgrafa povezano z zunanjostjo, se smer podgrafa prezre. V nasprotnem primeru podgraf podeduje smer nadrejenega grafa:

Koda
                            
Kopiraj
Vdelava
flowchart LR subgraph subgraph1 direction TB top1[top] --> bottom1[bottom] end subgraph subgraph2 direction TB top2[top] --> bottom2[bottom] end %% ^ These subgraphs are identical, except for the links to them: %% Link *to* subgraph1: subgraph1 direction is maintained outside --> subgraph1 %% Link *within* subgraph2: %% subgraph2 inherits the direction of the top-level graph (LR) outside ---> top2

Niz Markdown

Niz Markdown izboljša diagrame poteka in miselne vzorce s ponujanjem bolj prilagodljive vrste niza, saj podpira možnosti oblikovanja besedila, kot sta krepko in ležeče, ter omogoča samodejno prelamljanje besedila znotraj oznak.

Koda
                            
Kopiraj
Vdelava
flowchart LR subgraph "One" a("`The **cat** in the hat`") -- "edge label" --> b{{"`The **dog** in the hog`"}} end subgraph "`**Two**`" c("`The **cat** in the hat`") -- "`Bold **edge label**`" --> d("The dog in the hog") end
  • Za krepko besedilo pred in za besedilom uporabite dve zvezdici (**).
  • Za ležeče besedilo uporabite eno zvezdico (*) pred in za besedilom.
  • Pri običajnih nizih morate za prelom besedila v vozlišču dodati oznako <br>. Vendar se niz Markdown samodejno prelomi, ko je besedilo predolgo, in za začetek nove vrstice zadošča znak za novo vrstico namesto oznake <br>.

Ta funkcija velja za oznake vozlišč, oznake povezovalnih črt in oznake podgrafov

Samodejno prelamljanje lahko onemogočite z uporabo posebne sintakse

Koda
                            
Kopiraj
Vdelava
--- config: markdownAutoWrap: false --- graph LR

Komentar

V diagram poteka lahko vnesete komentarje, ki jih urejevalnik prezre. Komentar mora zavzemati celotno vrstico in se mora začeti z dvojnim odstotkom (%%). Vsako besedilo od začetka komentarja do naslednje vrstice se obravnava kot komentar, vključno s katero koli sintakso diagrama poteka.

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

Slogi in razredi

Slog povezave

Nastavite lahko slog povezave. Na primer, morda želite oblikovati povezavo, ki se v procesu premika nazaj; ker povezave za razliko od vozlišč nimajo ID, je treba na drug način določiti, kateri slog naj povezava uporabi. Uporabite zaporedno številko ob definiranju povezave ali privzeto vrednost, ki se uporabi za vse povezave.

                            
Kopiraj
Vdelava
linkStyle 3 stroke:#ff3,stroke-width:4px,color:red;

Slog lahko dodate več povezavam tako, da v posameznem stavku številke povezav ločite z vejicami:

                            
Kopiraj
Vdelava
linkStyle 1,2,7 color:blue;

Nastavitev sloga krivulje povezovalne črte

Če privzeta metoda ne ustreza vašim potrebam, lahko nastavite slog krivulje povezovalnih črt med elementi. Razpoložljivi slogi krivulj vključujejo basis, bumpX, bumpY, cardinal, catmullRom, linear, monotoneX, monotoneY, natural, step, stepAfter in stepBefore.

V spodnjem primeru diagram od leve proti desni uporablja slog krivulje stepBefore.

                            
Kopiraj
Vdelava
%%{ init: { 'flowchart': { 'curve': 'stepBefore' } } }%% graph LR

Nastavitev sloga vozlišča

Vozlišču lahko nastavite določen slog, na primer debelejši rob ali drugačno barvo ozadja.

Koda
                            
Kopiraj
Vdelava
flowchart LR id1(Start)-->id2(Stop) style id1 fill:#f99,stroke:#33d,stroke-width:4px style id2 fill:#bfc,stroke:#f96,stroke-width:2px,color:#000,stroke-dasharray: 5 5

Razred

Namesto da bi slog definirali vsakič znova, je bolj priročno definirati slogovni razred in ga priložiti vozliščem, ki naj bi bila videti drugače.

Definicija razreda je prikazana spodaj:

                            
Kopiraj
Vdelava
classDef className fill:pink,stroke:#333,stroke-width:4px;

Poleg tega lahko v enem stavku definirate slog za več razredov:

                            
Kopiraj
Vdelava
classDef firstClassName,secondClassName font-size:12pt;

Prilaganje razreda vozlišču poteka takole:

                            
Kopiraj
Vdelava
class nodeId1 className;

V enem stavku lahko razred priložite tudi seznamu vozlišč:

                            
Kopiraj
Vdelava
class nodeId1,nodeId2 className;

Za dodajanje razreda lahko z operatorjem ::: ime razreda priložite vozlišču, kot je prikazano spodaj:

Koda
                            
Kopiraj
Vdelava
flowchart LR A:::someclass --> B classDef someclass fill:#f96

Ta oblika se lahko uporabi pri določanju več povezav med vozlišči:

Koda
                            
Kopiraj
Vdelava
flowchart LR A:::foo & B:::bar --> C:::foobar classDef foo stroke:#f00 classDef bar stroke:#0f0 classDef foobar stroke:#00f

  • V deklaracijah grafov se stavki zdaj lahko končajo tudi brez podpičja. Po različici 0.2.16 je končanje stavka grafa s podpičjem le neobvezno. Zato je spodnja deklaracija grafa prav tako veljavna kot stara deklaracija grafa.
  • Med vozlišči in povezavami je dovoljen en presledek. Vendar med vozliščem in njegovim besedilom ter med povezavo in njenim besedilom ne sme biti presledkov. Stara deklaracija grafa je še vedno veljavna, zato je ta nova funkcija neobvezna in je namenjena izboljšanju berljivosti.

Spodaj je nova deklaracija povezovalne črte, ki je prav tako veljavna kot stara deklaracija povezovalne črte.

Koda
                            
Kopiraj
Vdelava
flowchart LR A[Hard edge] -->|Link text| B(Round edge) B --> C{Decision} C -->|One| D[Result one] C -->|Two| E[Result two]