- ベストアンサー
graphvizで到達矢印の位置を選択したい。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
結論から言う、 ??? ではなく、 a,bの指定で、「aの何処」から「bの何処」という感じで使います。 a:n -> b:sw ; とすると、 a:n が ノードa の 上( n=北=上) 、 b:sw が ノードb の 左下( sw=南西 ) となり ノードa の 上 から ノードb の 左下 へのエッジになります。 http://www.graphviz.org/content/dot-language に書いてはあるんですが、ちょっとわかりずらいです。 エッジの文法は edge_stmt : (node_id | subgraph) edgeRHS [ attr_list ] で、 node_id は node_id : ID [ port ] で、portは port : ':' ID [ ':' compass_pt ] で compass_ptは compass_pt : (n | ne | e | se | s | sw | w | nw | c | _) です。 a->b [dir=none]; というのは node_id nodeop node_id attr_list という文法に従っていて、 node_idは a edgeop は -> node_idは b attr_list は [dir=none] ということになります。 ここで、 node_id として、何処に接続するかを port で指定するようにします。 compass_pt を使った例が最初に示したものです。 他にIDを使って指定する例が以下に載っています http://www.graphviz.org/content/node-shapes