エッジ属性の設定

名称

blockdiag のエッジ属性の設定

使い方

ノードA -> ノードB -> ... [ 属性名 ];

ノードA -> ノードB -> ... [ 属性名 = 設定値 ];

ノードA -> ノードB -> ... [ 属性名 = 設定値 , 属性名 = 設定値 , ... ];

概要

エッジ属性の設定をします。

属性を複数指定するときはカンマで区切ります。属性に指定する文字列に記号や空白が含まれる場合はクオートが必要です。

属性

label = String

短い文をエッジに表示します。

style = Type of edge line

エッジの線の種類を指定します。省略時は実線で繋ぎます。

dotted
点線で繋ぎます。
dashed
破線で繋ぎます。
none
エッジを消します。
Number, Number, ...
線の長さ、空白の長さをカンマ区切りで交互に指定します。

バージョン 0.9.6 で追加.

hstyle = Type of head shape

矢印の形状を指定します。

バージョン 0.7.3 で追加.

generalization
汎化 (generalization)
composition
コンポジション (composition)
aggregation
集約 (aggregation)
color = #RRGGBB or colorname

エッジの色を指定します。省略時は黒です。 none を指定すると透明の矢印を書きます。

dir = direction

矢印の向きを指定します。

none

矢印を書かずにノードを繋ぎます。

A -- B と等価です。

forward

矢印を左のノードから右のノード、または上のノードから下のノードに向かって書きます。

A -> B と等価です。

back

矢印を右のノードから左のノード、または下のノードから上のノードに向かって書きます。

A <- B と等価です。

both

矢印を両方に書きます。

A <-> B と等価です。

folded

エッジを折り返します。

バージョン 0.7.5 で追加.

textcolor = #RRGGBB or colorname

エッジのラベルの色を指定します。省略時は黒です。

バージョン 0.9.2 で追加.

thick

エッジを太くします。

バージョン 0.9.7 で追加.

fontsize = Integer

エッジのラベルのフォントサイズを指定します。省略時は11です。

バージョン 0.9.7 で追加.

設定例

label 属性の設定例

blockdiag {
   // Set labels to edges. (short text only)
   A -> B -> C [label = "foo"];
   C -> A [label = "bar"];
}

style 属性の設定例

blockdiag {
   // Set style to edges.
   A -> B [style = dotted];
   B -> C [style = dashed];
   C -> D [style = none];
   D -> E [style = "3,3,3,3,15,3"];
}

hstyle 属性の設定例

blockdiag {
   // Set head shapes to edges.
   A -> B [hstyle = generalization];
   B -> C [hstyle = composition];
   C -> D [hstyle = aggregation];
}

color 属性の設定例

blockdiag {
   // Set color to edges.
   A -> B [color = "#0000FF"];
   B -> C [color = "red"];
}

dir 属性の設定例

blockdiag {
   // Set arrow direction to edges.
   A -> B [dir = none];
   B -> C [dir = forward];
   C -> D [dir = back];
   D -> E [dir = both];

   // Same meaning
   F -- G -> H <- I <-> J;
}

folded 属性の設定例

blockdiag {
   A -> B -> C -> D -> E;

   // fold edge at C to D (D will be layouted at top level; left side)
   C -> D [folded];
}

textcolor 属性の設定例

blockdiag {
   A -> B[label=foo, textcolor=pink];
}

fontsize 属性の設定例

blockdiag {
   A -> B [label='text', fontsize=16];
}

thick 属性の設定例

blockdiag {
   A -> B -> C;
        B -> D[thick];
}