用neato而不是直线绘制样条线

时间:2016-07-05 23:35:16

标签: python graphviz neato

我正在使用以下内容绘制python程序中的数据流图:

g.render('output/data.gv', view=True)

由于我需要在特定位置对齐节点,因此我决定使用neato作为引擎:

g = Digraph(engine='neato')

但是,由于默认情况下neato绘制直线而不是样条曲线(如dot所示),这会使图形看起来有点混乱(见下文)。那么有没有办法配置make it draw pylines code?

示例(文件data.gv):

digraph {
    nop1 [label=nop1 pos="0,6!"]
    o1 [label="o1
ALU" height=0.75 pos="0,5!"]
        nop1 -> o1
    o2 [label="o2
MUL" height=1.75 pos="1,4.5!"]
        nop1 -> o2
    o3 [label="o3
MUL" height=1.75 pos="2,4.5!"]
        nop1 -> o3
    o4 [label="o4
MUL" height=1.75 pos="3,4.5!"]
        nop1 -> o4
    o7 [label="o7
ALU" height=0.75 pos="4,5!"]
        nop1 -> o7
    o5 [label="o5
MUL" height=1.75 pos="0,2.5!"]
        o3 -> o5
        o4 -> o5 
    o6 [label="o6
ALU" height=0.75 pos="1,3!"]
        o4 -> o6
    o8 [label="o8
ALU" height=0.75 pos="0,1!"]
        o3 -> o8
        o5 -> o8
    nop2 [label="nop2
NOP" height=-0.25 pos="0,0!"]
        o1 -> nop2
        o2 -> nop2
        o6 -> nop2
        o7 -> nop2
        o8 -> nop2
}

Graph generated by above code

0 个答案:

没有答案