2017-07-13 15 views
0

次のファイルをドット(バージョン2.38.0)で処理すると、Warning: Arrow type "fooo" unknown - ignoringと表示されます。このドットファイルで "Arrow type ... unkown"という警告が表示されるのはなぜですか?

digraph { 
    n1 [ label="ND 1" ]; 
    n5 [ label="ND 5" ]; 

    n12 [ 
    label=< 
     <table> 
     <tr> 
      <td port='fooo'>FOOOOOO</td> 
     </tr> 
     </table>> 
    ]; 

    n12:fooo -> n1; 

    n5 -> n1 [arrowhead=invempty]; 

{rank=same; n1 n12} 

} 

私は理解できません、なぜですか。

n5 -> n1 [arrowhead=invempty];または{rank=same; n1 n12}ステートメントのいずれかを削除すると、警告が消えます。

誰かがこれを私に説明できますか?

答えて

0

あなたのport='fooo'属性は、ポートの定義済みの代替ではないため、ちょうどあなたのport='fooo'属性が嫌いです。どのような種類の警告なしで

digraph { 
    n1 [ label="ND 1" ]; 
    n5 [ label="ND 5" ]; 
    n12 [ label=<<table><tr><td port='e'>FOOOOOO</td></tr></table>> ]; 
    n12:e -> n1; 
    n5 -> n1 [arrowhead="invempty"]; 
{rank=same; n1 n12} 
} 

:ドキュメントはIDが大丈夫であることを示唆しているにもかかわらず、(利用可能な「コンパス・ポイント」オプションのリストから)efoooを交換すると良い結果が得られます。 port: ':' ID [':' compass_pt]は有効です。コンパスポイントはオプションですが、IDはそうではないことを示唆しています。あなたの例はそうでなければ示唆します。

+0

Imho、これはパーサーのバグです。 'n12:fooo - > n1 'を' n12:fooo - > n1'に追加すると、 'n12:fooo - > n1;' *を 'n5 - > n1 [arrowhead = invempty]警告が消え、グラフが正しく表示されます。 –

+0

@RenéNyffeneggerに同意する必要があります。試した構文がDOT言語のドキュメントに記載されている仕様に準拠しているからです。 – TomServo

関連する問題