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

VuokaavioSyntaksi

Perusmääritelmä

Vuokaavio koostuu solmuista (geometriset muodot) ja yhdistävistä viivoista (nuolet tai viivat). Mermaid-koodi määrittelee, miten solmut ja yhdistävät viivat rakennetaan, ja tukee useita nuolityyppejä, monisuuntaisia nuolia sekä mielivaltaisia linkkejä aligraafeihin.

Varoitus Jos käytät sanaa "end" vuokaavion solmussa, kirjoita ensimmäinen kirjain tai koko sana isolla (esimerkiksi: "End" tai "END"); pelkän pienen "end"-sanan syöttäminen aiheuttaa virheen vuokaaviossa.

Varoitus Jos yhdistät vuokaavion solmuja ja käytät kirjainta "o" tai "x" ensimmäisenä kirjaimena, lisää välilyönti kirjaimen eteen tai kirjoita kirjain isolla (esimerkiksi: "dev--- ops", "dev---Ops").

Yksi solmu (oletus)

Koodi
                            
Kopioi
Upotus
--- title: Node --- flowchart LR id
Tietoa

id on se, mitä laatikossa näytetään.

Vinkki

Vuokaavion luontisyntaksissa voit käyttää flowchart-komennon lisäksi myös graph-komentoa.

Solmu, jossa on teksti

Voit myös asettaa laatikolle id:stä poikkeavan tekstin. Jos teet tämän useita kertoja, järjestelmä käyttää solmun viimeksi määritettyä tekstiä. Lisäksi jos solmulle määritetään myöhemmin yhdistävä viiva, tekstin määrittely voidaan jättää pois; laatikkoa renderöitäessä käytetään aiemmin määritettyä tekstiä.

Koodi
                            
Kopioi
Upotus
--- title: Node with text --- flowchart LR id1[This is the text in the box]

Unicode-teksti

Kääri Unicode-teksti lainausmerkkeihin.

Koodi
                            
Kopioi
Upotus
flowchart LR id["This ❤ Unicode"]

Markdown-muoto

Kääri Markdown-teksti lainausmerkkeihin ja takakenoviivoihin

Koodi
                            
Kopioi
Upotus
flowchart LR markdown["`This **is** _Markdown_`"] newLines["`Line1 Line 2 Line 3`"] markdown --> newLines

Suunta

Määrittelee vuokaavion suunnan

Osoittaa, että vuokaavio on järjestetty ylhäältä alas (TD tai TB)

Koodi
                            
Kopioi
Upotus
flowchart TD Start --> Stop

Vuokaavion suunnat ovat:

  • TB - ylhäältä alas
  • TD - ylhäältä alas (sama kuin ylhäältä alas)
  • BT - alhaalta ylös
  • RL - oikealta vasemmalle
  • LR - vasemmalta oikealle

Solmun muoto

Pyöristetty suorakaide

Koodi
                            
Kopioi
Upotus
flowchart LR id1(This is the text in the box)

Stadion-muoto

Koodi
                            
Kopioi
Upotus
flowchart LR id1([This is the text in the box])

Aliprosessi

Koodi
                            
Kopioi
Upotus
flowchart LR id1[[This is the text in the box]]

Tietokanta

Koodi
                            
Kopioi
Upotus
flowchart LR id1[(Database)]

Ympyrä

Koodi
                            
Kopioi
Upotus
flowchart LR id1((This is the text in the circle))

Epäsymmetrinen muoto

Koodi
                            
Kopioi
Upotus
flowchart LR id1>This is the text in the box]

Vinoneliö

Koodi
                            
Kopioi
Upotus
flowchart LR id1{This is the text in the box}

Kuusikulmio

Koodi
                            
Kopioi
Upotus
flowchart LR id1{{This is the text in the box}}

Suunnikas

Koodi
                            
Kopioi
Upotus
flowchart TD id1[/This is the text in the box/]

Käänteinen suunnikas

Koodi
                            
Kopioi
Upotus
flowchart TD id1[\This is the text in the box\]

Puolisuunnikas

Koodi
                            
Kopioi
Upotus
flowchart TD A[/ProcessOn\]

Käänteinen puolisuunnikas

Koodi
                            
Kopioi
Upotus
flowchart TD B[\ProcessOn/]

Kaksoisympyrä

Koodi
                            
Kopioi
Upotus
flowchart TD id1(((This is the text in the circle)))

Mermaid-vuokaavion solmumuotojen laajennus

Mermaid esitteli 30 uutta muotoa parantaakseen vuokaavioiden luonnin joustavuutta ja tarkkuutta. Nämä uudet muodot tarjoavat enemmän vaihtoehtoja prosessien, päätösten, tapahtumien, tietovarastojen ja muiden vuokaavion elementtien visuaaliseen esittämiseen, mikä parantaa selkeyttä ja semanttista merkitystä.

Muotojen määrittelyn uusi syntaksi

Mermaid tukee nyt yleistä syntaksia muototyyppien määrittämiseen kasvavan muotomäärän mukaisesti. Tämän syntaksin avulla voit määrittää solmulle tietyn muodon selkeässä ja joustavassa muodossa.

                            
Kopioi
Upotus
A@{ shape: rect }

Tämä syntaksi luo solmun A suorakaiteeksi. Se renderöidään samalla tavalla kuin [A] tai A.

Täydellinen luettelo solmumuodoista

Seuraavassa on täydellinen luettelo uusista solmumuodoista sekä niiden vastaavista merkityksistä, lyhenteistä ja aliaksista:

Semanttinen nimi Graafisyntaksi Syntaksin lyhenne Syntaksin vaihtoehto Yksityiskohtainen kuvaus
Kortti Notched Rectangle notch-rect card, notched-rectangle Esittää korttia
Lajittelu Hourglass hourglass collate Esittää lajittelutoimintoa
Tietoliikennelinja Lightning Bolt bolt com-link, lightning-bolt Tietoliikennelinja
Kommentti Curly Brace brace brace-l, comment Lisää kommentti
Oikeanpuoleinen kommentti Curly Brace brace-r Lisää kommentti
Kommentti, jossa on aaltosulut molemmilla puolilla Curly Braces braces Lisää kommentti
Tietojen syöttö tai tulostus Lean Right lean-r in-out, lean-right Esittää syöttöä tai tulostusta
Tietojen syöttö tai tulostus Lean Left lean-l lean-left, out-in Esittää tulostusta tai syöttöä
Tietokanta Cylinder cyl cylinder, database, db Tietokantavarasto
Päätös Diamond diam decision, diamond, question Päätösvaihe
Viive Half-Rounded Rectangle delay half-rounded-rectangle Esittää viivettä
Suorasaantimuisti Horizontal Cylinder h-cyl das, horizontal-cylinder Suorasaantimuisti
Levyvarasto Lined Cylinder lin-cyl disk, lined-cylinder Levyvarasto
Näyttö Curved Trapezoid curv-trap curved-trapezoid, display Esittää tiedon näyttämistä näytöllä, päätteellä ja muilla laitteilla
Jaettu käsittely Divided Rectangle div-rect div-proc, divided-process, divided-rectangle Jaetun käsittelyn muoto
Asiakirja Document doc document Esittää asiakirjaa
Tapahtuma Rounded Rectangle rounded event Esittää tapahtumaa
Poiminta Triangle tri extract, triangle Poimintaprosessi
Haarautuminen/Yhdistäminen Filled Rectangle fork join Vuokaavion haarautuminen tai yhdistäminen
Sisäinen tallennus Window Pane win-pane internal-storage, window-pane Sisäinen tallennus
Yhteyspiste Filled Circle f-circ filled-circle, junction Yhteyspiste
Asiakirja viivalla Lined Document lin-doc lined-document Asiakirja viivalla
Viiva/Varjostettu prosessi Lined Rectangle lin-rect lin-proc, lined-process, lined-rectangle, shaded-process Prosessimuoto viivalla
Silmukkarajoitus Trapezoidal Pentagon notch-pent loop-limit, notched-pentagon Silmukkarajoituksen vaihe
Manuaalinen tiedosto Flipped Triangle flip-tri flipped-triangle, manual-file Manuaalinen tiedostotoiminto
Manuaalinen syöttö Sloped Rectangle sl-rect manual-input, sloped-rectangle Manuaalisen syötön vaihe
Manuaalinen toiminto Trapezoid Base Top trap-t inv-trapezoid, manual, trapezoid-top Esittää manuaalista tehtävää
Useita asiakirjoja Stacked Document docs documents, st-doc, stacked-document 多个文档
Useita prosesseja Stacked Rectangle st-rect processes, procs, stacked-rectangle 多个进程
Epäsäännöllinen muoto Odd odd Epäsäännöllinen muoto
Paperinauha Flag flag paper-tape Paperinauha
Valmisteluehto Hexagon hex hexagon, prepare Valmistelu- tai ehtovaihe
Priorisoitu toiminto Trapezoid Base Bottom trap-b priority, trapezoid, trapezoid-bottom Priorisoitu toiminto
Käsittely Rectangle rect proc, process, rectangle Vakiokäsittelyn muoto
Aloitus Circle circle circ Aloituspiste
Aloitus Small Circle sm-circ small-circle, start Pieni pyöreä aloituspiste
Lopetus Double Circle dbl-circ double-circle Esittää lopetuspistettä
Lopetus Framed Circle fr-circ framed-circle, stop Esittää lopetuspistettä
Tallenna tiedot Bow Tie Rectangle bow-rect bow-tie-rectangle, stored-data Tallenna tiedot
Aliprosessi Framed Rectangle fr-rect framed-rectangle, subproc, subprocess, subroutine Aliprosessi, aliohjelma
Yhteenveto Crossed Circle cross-circ crossed-circle, summary Yhteenveto
Merkitty asiakirja Tagged Document tag-doc tagged-document Merkitty asiakirja
Standardisoitu prosessi Tagged Rectangle tag-rect tag-proc, tagged-process, tagged-rectangle 已标准进程
Loppupiste Stadium stadium pill, terminal Loppupiste
Tekstilohko Text Block text Tekstilohko

Seuraavassa on esimerkki vuokaaviokoodista, joka käyttää uusia muotoja:

Koodi
                            
Kopioi
Upotus
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"}

Prosessi

Koodi
                            
Kopioi
Upotus
flowchart TD A@{ shape: rect, label: "This is a process" }

Tapahtuma

Koodi
                            
Kopioi
Upotus
flowchart TD A@{ shape: rounded, label: "This is an event" }

Aliprosessi

Koodi
                            
Kopioi
Upotus
flowchart TD A@{ shape: subproc, label: "This is a subprocess" }

Tietokanta (sylinteri)

Koodi
                            
Kopioi
Upotus
flowchart TD A@{ shape: cyl, label: "Database" }

Aloitus (ympyrä)

Koodi
                            
Kopioi
Upotus
flowchart TD A@{ shape: circle, label: "Start" }

Epäsäännöllinen muoto

Koodi
                            
Kopioi
Upotus
flowchart TD A@{ shape: odd, label: "Odd shape" }

Päätös (vinoneliö)

Koodi
                            
Kopioi
Upotus
flowchart TD A@{ shape: diamond, label: "Decision" }

Valmisteluehto (kuusikulmio)

Koodi
                            
Kopioi
Upotus
flowchart TD A@{ shape: hex, label: "Prepare conditional" }

Tietojen syöttö/tulostus (oikealle kallistettu)

Koodi
                            
Kopioi
Upotus
flowchart TD A@{ shape: lean-r, label: "Input/Output" }

Tietojen syöttö/tulostus (vasemmalle kallistettu)

Koodi
                            
Kopioi
Upotus
flowchart TD A@{ shape: lean-l, label: "Input/Output" }

Priorisoitu toiminto (puolisuunnikas)

Koodi
                            
Kopioi
Upotus
flowchart TD A@{ shape: trap-b, label: "Priority action" }

Manuaalinen toiminto (käänteinen puolisuunnikas)

Koodi
                            
Kopioi
Upotus
flowchart TD A@{ shape: trap-t, label: "Manual operation" }

Lopetus (kaksoisympyrä)

Koodi
                            
Kopioi
Upotus
flowchart TD A@{ shape: dbl-circ, label: "Stop" }

Tekstilohko

Koodi
                            
Kopioi
Upotus
flowchart TD A@{ shape: text, label: "This is a text block" }

Kortti (lovettu suorakaide)

Koodi
                            
Kopioi
Upotus
flowchart TD A@{ shape: notch-rect, label: "Card" }

Prosessi viivalla/varjostuksella

Koodi
                            
Kopioi
Upotus
flowchart TD A@{ shape: lin-rect, label: "Lined process" }

Aloitus (pieni ympyrä)

Koodi
                            
Kopioi
Upotus
flowchart TD A@{ shape: sm-circ, label: "Small start" }

Lopetus (ympyrä laatikolla)

Koodi
                            
Kopioi
Upotus
flowchart TD A@{ shape: framed-circle, label: "Stop" }

Haarautuminen/yhdistäminen (pitkä suorakaide)

Koodi
                            
Kopioi
Upotus
flowchart TD A@{ shape: fork, label: "Fork or Join" }

Lajittelu (tiimalasi)

Koodi
                            
Kopioi
Upotus
flowchart TD A@{ shape: hourglass, label: "Collate" }

Kommentti (aaltosulut)

Koodi
                            
Kopioi
Upotus
flowchart TD A@{ shape: comment, label: "Comment" }

Kommentti oikealla (oikeanpuoleiset aaltosulut)

Koodi
                            
Kopioi
Upotus
flowchart TD A@{ shape: brace-r, label: "Comment" }

Kommentti (sulkeet molemmilla puolilla)

Koodi
                            
Kopioi
Upotus
flowchart TD A@{ shape: braces, label: "Comment" }

Tietoliikennelinja (salama)

Koodi
                            
Kopioi
Upotus
flowchart TD A@{ shape: bolt, label: "Communication link" }

Asiakirja

Koodi
                            
Kopioi
Upotus
flowchart TD A@{ shape: doc, label: "Document" }

Viive (puoliksi pyöristetty suorakaide)

Koodi
                            
Kopioi
Upotus
flowchart TD A@{ shape: delay, label: "Delay" }

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

Koodi
                            
Kopioi
Upotus
flowchart TD A@{ shape: das, label: "Direct access to storage" }

Levyvarasto (uritettu sylinteri)

Koodi
                            
Kopioi
Upotus
flowchart TD A@{ shape: lin-cyl, label: "Disk storage" }

Näyttö (näyttömuoto)

Koodi
                            
Kopioi
Upotus
flowchart TD A@{ shape: curv-trap, label: "Display" }

Jaettu käsittely (jaettu suorakaide)

Koodi
                            
Kopioi
Upotus
flowchart TD A@{ shape: div-rect, label: "Divided process" }

Poiminta (pieni kolmio)

Koodi
                            
Kopioi
Upotus
flowchart TD A@{ shape: tri, label: "Extract" }

Sisäinen tallennus (ikkunapaneeli)

Koodi
                            
Kopioi
Upotus
flowchart TD A@{ shape: win-pane, label: "Internal storage" }

Yhteyspiste (täytetty ympyrä)

Koodi
                            
Kopioi
Upotus
flowchart TD A@{ shape: f-circ, label: "Connect" }

Asiakirja viivalla

Koodi
                            
Kopioi
Upotus
flowchart TD A@{ shape: lin-doc, label: "Lined document" }

Silmukkarajoitus (lovettu viisikulmio)

Koodi
                            
Kopioi
Upotus
flowchart TD A@{ shape: notch-pent, label: "Loop limit" }

Manuaalinen tiedosto (käännetty kolmio)

Koodi
                            
Kopioi
Upotus
flowchart TD A@{ shape: flip-tri, label: "Manual file" }

Manuaalinen syöttö (suorakulmainen puolisuunnikas)

Koodi
                            
Kopioi
Upotus
flowchart TD A@{ shape: sl-rect, label: "Manual input" }

Useita asiakirjoja (pinotut asiakirjat)

Koodi
                            
Kopioi
Upotus
flowchart TD A@{ shape: docs, label: "Multi-document" }

Useita prosesseja (pinotut suorakaiteet)

Koodi
                            
Kopioi
Upotus
flowchart TD A@{ shape: processes, label: "Multiple processes" }

Paperinauha (lippu)

Koodi
                            
Kopioi
Upotus
flowchart TD A@{ shape: flag, label: "Paper tape" }

Tallenna tiedot (rusettisuorakaide)

Koodi
                            
Kopioi
Upotus
flowchart TD A@{ shape: bow-rect, label: "Data stored" }

Yhteenveto (ympyrä ristillä)

Koodi
                            
Kopioi
Upotus
flowchart TD A@{ shape: cross-circ, label: "Summary" }

Merkitty asiakirja

Koodi
                            
Kopioi
Upotus
flowchart TD A@{ shape: tag-doc, label: "Tagged document" }

Merkitty prosessi

Koodi
                            
Kopioi
Upotus
flowchart TD A@{ shape: tag-rect, label: "Tagged process" }

Erityiset muodot Mermaid-vuokaaviossa

Mermaid esitteli myös kuvat vuokaavioiden tehostamiseksi, jolloin voit sisällyttää kuvia suoraan vuokaavioon tarjoten enemmän visuaalista taustaa ja selkeyttä.

Kuvan muoto

Voit lisätä kuvan vuokaavioon komennolla image; kuvan määrittelyn syntaksi on seuraava:

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

Parametri

  • img: näytettävän kuvan URL-osoite.
  • label: kuvaan liitetty tekstimerkintä, joka voi olla mikä tahansa merkkijono. Jos sitä ei ole määritetty, mitään merkintää ei näytetä.
  • pos: merkinnän sijainti. Jos sitä ei ole määritetty, merkintä sijaitsee oletuksena kuvan alaosassa.
  • w: kuvan leveys. Jos sitä ei ole määritetty, oletuksena on kuvan luonnollinen leveys.
  • h: kuvan korkeus. Jos sitä ei ole määritetty, oletuksena on kuvan luonnollinen korkeus.
  • constraint: määrittää, rajoittaako kuva solmun kokoa. Tämä asetus varmistaa myös, että kuva säilyttää alkuperäisen kuvasuhteensa ja säätää korkeutta leveyden mukaan. Jos sitä ei ole määritetty, oletuksena on off.

Kuvat tarjoavat vuokaavioillesi lisää joustavuutta ja visuaalista vetovoimaa, mikä tekee niistä informatiivisempia ja kiinnostavampia.

Solmujen väliset yhteydet

Solmut voidaan yhdistää yhdistävillä viivoilla ja nuolilla. Linkkejä on eri tyyppejä, ja linkkeihin voidaan liittää myös tekstimerkkijonoja.

Linkki nuolella

Koodi
                            
Kopioi
Upotus
flowchart LR A-->B

Avoin linkki

Koodi
                            
Kopioi
Upotus
flowchart LR A --- B

Linkki, jossa on teksti

Koodi
                            
Kopioi
Upotus
flowchart LR A-- This is the text! ---B

tai

Koodi
                            
Kopioi
Upotus
flowchart LR A --- | This is the text| B

Linkki, jossa on nuoli ja teksti

Koodi
                            
Kopioi
Upotus
flowchart LR A-->|text|B

tai

Koodi
                            
Kopioi
Upotus
flowchart LR A-- text -->B

Katkoviivalinkki

Koodi
                            
Kopioi
Upotus
flowchart LR A-.->B;

Katkoviivalinkki, jossa on teksti

Koodi
                            
Kopioi
Upotus
flowchart LR A-. text .->B;

Paksu linkki

Koodi
                            
Kopioi
Upotus
flowchart LR A ==> B

Paksu linkki, jossa on teksti

Koodi
                            
Kopioi
Upotus
flowchart LR A == |text| ==> B

Näkymätön linkki

Koodi
                            
Kopioi
Upotus
flowchart LR A ~~~ B

Linkkien ketjuyhteys

Koodi
                            
Kopioi
Upotus
flowchart LR A -- text --> B -- text2 --> C

Voit myös määritellä useita solmulinkkejä samalla rivillä seuraavasti:

Koodi
                            
Kopioi
Upotus
flowchart LR a --> b & c--> d

Voit myös kuvata riippuvuuksia, kuten alla olevassa koodissa:

Koodi
                            
Kopioi
Upotus
flowchart LR a --> b & c--> d & e--> f

Jos sama graafi kuvataan perussyntaksilla, tarvitaan 8 riviä. On syytä muistuttaa, että tämän menetelmän liiallinen käyttö voi tehdä Markdown-muotoisesta vuokaaviosta vaikeammin luettavan.

Koodi
                            
Kopioi
Upotus
flowchart TB a --> b a --> c b --> d b --> e c --> d c --> e d --> f e --> f

Lisää tunniste yhdistävälle viivalle

Mermaid tukee nyt tunnisteen lisäämistä yhdistävälle viivalle samalla tavalla kuin tunnisteen ja metatietojen liittämistä solmuihin. Tämä ominaisuus luo perustan edistyneemmille tyylittelyille, luokille ja animaatioille yhdistävillä viivoilla.

Syntaksi:

Jos haluat lisätä tunnisteen yhdistävälle viivalle, kirjoita tunniste yhdistävän viivan syntaksin eteen ja sen perään välittömästi @-merkki. Esimerkiksi:

Koodi
                            
Kopioi
Upotus
flowchart LR A e1@--> B

Tässä esimerkissä e1 on solmut A ja B yhdistävän viivan tunniste. Voit käyttää tätä tunnistetta myöhemmissä määrittely- tai tyylilauseissa samalla tavalla kuin solmua.

Ota animaatio käyttöön

Kun olet lisännyt tunnisteen yhdistävälle viivalle, voit ottaa yhdistävän viivan animaation käyttöön määrittämällä sen ominaisuudet:

Koodi
                            
Kopioi
Upotus
flowchart LR A e1@==> B e1@{ animate: true }

Tämä kertoo Mermaidille, että yhdistävä viiva e1 on animoitu.

Valitse animaatiotyyppi

Alkuversiossa tuetaan kahta animaationopeutta: fast ja slow. Tietyn animaatiotyypin valitseminen on helppo tapa ottaa animaatio käyttöön ja asettaa animaation nopeus kerralla.

Koodi
                            
Kopioi
Upotus
flowchart LR A e1@--> B e1@{ animation: fast }

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

Animoi classDef-lauseella

Voit myös animoida yhdistävää viivaa liittämällä sille luokan ja määrittämällä sitten animaatio-ominaisuudet classDef-lauseessa. Esimerkiksi:

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

Tässä koodissa:

  • e1@--> 创建了一个 ID 为 e1 的连接线
  • classDef animate määrittelee luokan nimeltä animate, jolla on tyyli- ja animaatio-ominaisuudet.
  • class e1 animate soveltaa animate-luokkaa yhdistävälle viivalle e1.

Huomautus pilkun escape-merkinnästä: kun asetat stroke-dasharray-ominaisuutta, muista escape-merkitä pilkku muotoon ,, koska pilkku toimii erottimena Mermaidin tyylimäärittelyissä.

Uusi nuolityyppi

Tukee uusia nuolityyppejä

  • Yhdistävä viiva täytetyllä ympyrällä
  • Yhdistävä viiva ristimerkillä

Yhdistävä viiva täytetyllä ympyrällä

Koodi
                            
Kopioi
Upotus
flowchart LR A --o B

Yhdistävä viiva ristimerkillä

Koodi
                            
Kopioi
Upotus
flowchart LR A --x B

Monisuuntainen nuoli

Voit käyttää monisuuntaisia nuolia, esimerkiksi:

Koodi
                            
Kopioi
Upotus
flowchart LR A o--o B B <--> C C x--x D

Yhdistävän viivan pituus

Vuokaavion jokaiselle solmulle annetaan renderöitävässä kaaviossa taso sen yhdistämien solmujen perusteella, eli pysty- tai vaakataso (vuokaavion suunnasta riippuen). Oletuksena linkit voivat ylittää minkä tahansa määrän tasoja, mutta voit vaatia tietyn yhteyden olevan muita pidempi lisäämällä yhteysmäärittelyyn ylimääräisiä viivoja.

Tässä esimerkissä solmusta B solmuun E johtavaan yhteyteen on lisätty kaksi ylimääräistä viivaa, jolloin se ylittää kaksi tasoa enemmän kuin tavallinen linkki:

Koodi
                            
Kopioi
Upotus
flowchart TD A[Start] --> B{Is it?} B -->|Yes| C[OK] C --> D[Rethink] D --> B B ---->|No| E[End]
Huomautus: yhteys voi olla pidempi kuin renderöintimoottorin pyytämä tasomäärä muiden pyyntöjen mukauttamiseksi.

Kun yhteysmerkintä kirjoitetaan yhteyden keskelle, yhteyden oikealle puolelle on lisättävä ylimääräisiä viivoja. Tämä esimerkki vastaa edellistä esimerkkiä:

Koodi
                            
Kopioi
Upotus
flowchart TD A[Start] --> B{Is it?} B -->|Yes| C[OK] C --> D[Rethink] D --> B B -- No ----> E[End]

Pisteellisille viivoille tai paksuille linkeille lisättävä merkki on yhtäsuuruusmerkki tai piste, kuten alla olevassa taulukossa näkyy:

Pituus 1 2 3
Tavallinen yhteys --- ---- -----
Tavallinen yhteys nuolella --> ---> ---->
Paksu yhteys === ==== =====
Paksu yhteys nuolella ==> ===> ====>
Pisteellinen viiva -.- -..- -...-
Pisteellinen viiva nuolella -.- -..-> -...->

Erikoismerkit

Voit sijoittaa tekstin lainausmerkkien sisään renderöidäksesi hankalampia merkkejä. Kuten alla olevassa esimerkissä:

Koodi
                            
Kopioi
Upotus
flowchart LR id1["This is the (text) in the box"]

Merkkien escape-koodaus

Merkit voidaan escape-merkitä esimerkin syntaksilla.

Koodi
                            
Kopioi
Upotus
flowchart LR A["A double quote:#quot;"] --> B["A dec char:#9829;"]

Annetut numerot ovat desimaalilukuja, joten # voidaan koodata muotoon #35. Myös HTML-merkkien nimiä tuetaan.

Aligraafi

                            
Kopioi
Upotus
subgraph title graph definition end

Seuraavassa on esimerkki:

Koodi
                            
Kopioi
Upotus
flowchart TB c1-->a2 subgraph one a1-->a2 end subgraph two b1-->b2 end subgraph three c1-->c2 end

Voit myös asettaa aligraafille tunnisteen.

Koodi
                            
Kopioi
Upotus
flowchart TB c1-->a2 subgraph ide1 [one] a1-->a2 end

Vuokaavio

Vuokaaviotyyppisissä kaavioissa voit myös asettaa aligraafiin johtavia ja siitä lähteviä yhdistäviä viivoja, kuten alla olevassa vuokaaviossa.

Koodi
                            
Kopioi
Upotus
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

Aligraafin suunta

Vuokaaviotyyppiä käytettäessä voit asettaa aligraafin renderöintisuunnan suuntalauseella seuraavasti:

Koodi
                            
Kopioi
Upotus
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

Rajoitukset

Jos jokin aligraafin solmu on yhdistetty ulkopuolelle, aligraafin suunta jätetään huomiotta. Muussa tapauksessa aligraafi perii ylägraafin suunnan:

Koodi
                            
Kopioi
Upotus
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

Markdown-merkkijono

Markdown-merkkijonot parantavat vuokaavioita ja miellekarttoja tarjoamalla joustavamman merkkijonotyypin, joka tukee tekstin muotoiluvaihtoehtoja kuten lihavointia ja kursiivia sekä tekstin automaattista rivinvaihtoa merkinnöissä.

Koodi
                            
Kopioi
Upotus
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
  • Lihavoi teksti käyttämällä kahta tähteä (**) tekstin edessä ja jälkeen.
  • Kursiivi saadaan sijoittamalla yksittäinen tähti (*) tekstin eteen ja jälkeen.
  • Perinteisille merkkijonoille sinun on lisättävä <br>-tunniste, jotta teksti rivittyy solmussa. Markdown-merkkijonot kuitenkin rivittyvät automaattisesti, kun teksti on liian pitkä, ja uuden rivin voi aloittaa pelkällä rivinvaihtomerkillä <br>-tunnisteen sijaan.

Tämä ominaisuus toimii solmumerkinnöissä, yhdistävien viivojen merkinnöissä ja aligraafien merkinnöissä

Automaattinen rivinvaihto voidaan poistaa käytöstä tietyllä syntaksilla

Koodi
                            
Kopioi
Upotus
--- config: markdownAutoWrap: false --- graph LR

Kommentti

Vuokaavioon voi syöttää kommentteja, jotka editori jättää huomiotta. Kommentin on oltava omalla rivillään ja alettava kaksoisprosenttimerkillä (%%). Kaikki teksti kommentin alusta seuraavaan riviin asti tulkitaan kommentiksi, mukaan lukien mahdollinen vuokaaviosyntaksi.

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

Tyyli ja luokka

Linkin tyyli

Linkkien tyylin voi asettaa. Saatat esimerkiksi haluta tyylitellä linkin, joka kulkee prosessissa taaksepäin; koska linkeillä ei ole tunnistetta kuten solmuilla, linkin tyyli on päätettävä muulla tavalla. Käytä linkin määrittelyn yhteydessä järjestysnumeroa tai käytä oletusarvoa, joka kohdistetaan kaikkiin linkkeihin.

                            
Kopioi
Upotus
linkStyle 3 stroke:#ff3,stroke-width:4px,color:red;

Voit myös lisätä tyylin usealle linkille erottamalla linkkien numerot pilkulla yhdessä lauseessa:

                            
Kopioi
Upotus
linkStyle 1,2,7 color:blue;

Aseta yhdistävän viivan käyrätyyli

Jos oletusmenetelmä ei vastaa tarpeitasi, voit asettaa kohteiden välisille yhdistäville viivoille käyrätyylin. Käytettävissä olevat käyrätyylit ovat basis, bumpX, bumpY, cardinal, catmullRom, linear, monotoneX, monotoneY, natural, step, stepAfter ja stepBefore.

Alla olevassa esimerkissä vasemmalta oikealle suunnatussa kaaviossa käytetään stepBefore-käyrätyyliä.

                            
Kopioi
Upotus
%%{ init: { 'flowchart': { 'curve': 'stepBefore' } } }%% graph LR

Aseta solmun tyyli

Solmulle voidaan asettaa tietty tyyli, kuten paksumpi reunus tai erilainen taustaväri.

Koodi
                            
Kopioi
Upotus
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

Luokka

Kätevämpää kuin tyylin määrittäminen joka kerta on määrittää tyyliluokka ja liittää se solmuihin, jotka tarvitsevat erilaisen ulkoasun.

Luokan määrittely näkyy alla:

                            
Kopioi
Upotus
classDef className fill:pink,stroke:#333,stroke-width:4px;

Lisäksi voit määrittää tyylin usealle luokalle yhdessä lauseessa:

                            
Kopioi
Upotus
classDef firstClassName,secondClassName font-size:12pt;

Luokan liittäminen solmuun tapahtuu seuraavasti:

                            
Kopioi
Upotus
class nodeId1 className;

Voit myös liittää luokan solmuluetteloon yhdessä lauseessa:

                            
Kopioi
Upotus
class nodeId1,nodeId2 className;

Luokan voi lisätä liittämällä luokan nimen solmuun :::-operaattorilla seuraavasti:

Koodi
                            
Kopioi
Upotus
flowchart LR A:::someclass --> B classDef someclass fill:#f96

Tätä muotoa voidaan käyttää määriteltäessä useita linkkejä solmujen välillä:

Koodi
                            
Kopioi
Upotus
flowchart LR A:::foo & B:::bar --> C:::foobar classDef foo stroke:#f00 classDef bar stroke:#0f0 classDef foobar stroke:#00f

  • Kaavion määrittelyssä lause ei voi nyt myöskään päättyä puolipisteeseen. Version 0.2.16 jälkeen puolipiste lauseen lopussa on vain valinnainen. Siksi alla oleva kaavion määrittely on yhtä kelvollinen kuin vanha kaavion määrittely.
  • Solmujen ja linkkien välissä sallitaan yksi välilyönti. Solmun ja sen tekstin sekä linkin ja sen tekstin välissä ei kuitenkaan saa olla välilyöntiä. Vanha kaavion määrittely on edelleen kelvollinen, joten tämä uusi ominaisuus on valinnainen ja pyrkii parantamaan luettavuutta.

Alla on yhdistävän viivan uusi määrittely, joka on yhtä kelvollinen kuin vanha yhdistävän viivan määrittely.

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