これまでに GraphViz のダイアグラムはノードとエッジでできているというお話をしてきました。
ノードとエッジを描くためのソースも紹介してきましたが、それらのソースに
graph example { ... }
だとか
digraph example { ... }
だとか書かれていることに気が付いた読者もいらっしゃるかもしれません。
GraphViz はこれらのブロックに囲まれたテキストをダイアグラムであると解釈します。
graph と digraph には以下のような違いがあります。
ノードとノードをエッジでつなぐときにエッジの両端に方向はありません。エッジは "--" のように書かなければなりません。たとえば
graph example { me -- you [label=" very good friends"] }
といった場合は下図が描かれます ( はスペースなのですがレイアウト調整のために入れています)。
ノードとノードをエッジでつなぐときにエッジの両端に方向があります。エッジは "->" のように書かなければなりません。たとえば
digraph example { me -> you [label=" You, my love.\l 🌹Please recieve this."] }
といった場合は下図が描かれます ( はやはりレイアウト調整のために入れています。また \l は左寄せ兼改行です)。