0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Mermaid のフローチャートで同じ名前のオブジェクトを複数作成する方法

Last updated at Posted at 2022-03-16

この記事では Mermaid を使用しています。Mermaid の図が正しく表示されない場合は Zenn の記事 でご覧ください。

やりたいこと

Mermaid で以下のようなフローチャートを作りたいとする。

        C --- D
       /       \
A --- B         E --- F
       \       /
        C --- D

そして、以下のような Mermaid のフローチャートを書いたとする。

flowchart LR
    A --- B --- C --- D --- E --- F
    B --- C
    D --- E

しかし、これだと以下のように出力されてしまう。

以下のように書いた場合も同じ出力になる。

flowchart LR
    A --- B
    B --- C
    B --- C
    C --- D
    D --- E
    D --- E
    E --- F

同じ文字列のオブジェクトを複数箇所で書くと、それらは単一のオブジェクトとみなされ、二重結合してしまう。

正しい書き方

同じ文字列のオブジェクトを複数作成したい場合は、以下のように ID と文字列を別々に定義すれば良い。

flowchart LR
    A --- B --- c1[C] --- d1[D] --- E --- F
          B --- c2[C] --- d2[D] --- E

上記の例のように、C ではなく c1[C]c2[C] のようにすることで、見た目上は同じ C となるが、別々のオブジェクトとして区別される。D も同様。

ID (上記の例でいう c1, c2, d1, d2 の部分) はかぶらなければ任意の文字列を設定できる。単なる識別子で、出力結果には表示されない。

上記を出力すると以下のようになる。

参考サイト

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?