如何在GraphViz中使用splines =“curved”设置边缘的弯曲方向? (使用neato)

时间:2015-06-18 13:39:29

标签: graphviz dot neato

我正在创建一个包含手动定位节点的图形,并在它们之间使用splines =“curved”类型的边。

wp-content

问题是其中一条边弯曲到错误的一侧,因此它通过一个节点: Screenshot from graph

是否有一种简单的方法可以解决这个问题,例如:在TikZ“向左弯”或“向右弯”?

我尝试使用边缘上的pos属性来设置样条控制点以更改弯曲,但这似乎根本不会改变边缘。

1 个答案:

答案 0 :(得分:0)

在Grapvhiz 2.38中,此问题似乎已解决。我已经稍微扩展了pos,但剩下的代码没有了:

点源:

digraph graphname {
  splines="curved";
  node[shape = box, margin="0.03,0.03", fontsize=11, height=0.1, width=0.1,  fixedsize=false];

  "LeftFoot\nRightHand" [pos="-2,-2!"];
  "RightFoot\nRightHand" [pos="-1.2,-2!"];
  "LeftFoot\nRightFoot" [pos="0,-2!"];

  edge[style = solid,fontsize=11];
  "LeftFoot\nRightFoot":n -> "RightFoot\nRightHand":n [label = "3", penwidth = 1, color = "red"];
  "LeftFoot\nRightFoot":s -> "LeftFoot\nRightHand":s [label = "7", penwidth = 1, color = "red"];

}

命令:

dot -Kneato -Tpng input.gv > output.png

输出:
enter image description here