使用graphviz和neato防止重叠记录

Chr*_*ams 37 dot graphviz neato

我正在构建一个点文件来表示计算机硬件以及与网络交换机和显示器的物理连接.我通过点程序处理它看起来不错,但我认为我真的希望它由neato处理以创建一个更"自由形式"的图片,因为它开始出现问题.现在当我用neato运行我的大文件时,一切都重叠了.

我试图找出定义overlap属性的语法.下面是我的点文件的子集.

graph g {  
    node [shape=record,height=.1];  
    PC8[label="{{<GigE1>GigE1|<GigE2>GigE2}|{<name>PC8}|{<dvi1>dvi1|<dvi2>dvi2|<dvi3>dvi3|<dvi4>dvi4}}"];  
    PC9[label="{{<GigE1>GigE1|<GigE2>GigE2}|{<name>PC9}|{<dvi1>dvi1|<dvi2>dvi2|<dvi3>dvi3|<dvi4>dvi4}}"];
    C1[label = "{{<dvi1>dvi1}|{<name>C1}}"];  
    C2[label = "{{<dvi1>dvi1}|{<name>C2}}"];  
    C3[label = "{{<dvi1>dvi1}|{<name>C3}}"];  
    C4[label = "{{<dvi1>dvi1}|{<name>C4}}"];  
    D1[label = "{{<dvi1>dvi1}|{<name>D1}}"];  
    D2[label = "{{<dvi1>dvi1}|{<name>D2}}"];  
    "PC8":dvi1 -- "C1":dvi1;  
    "PC8":dvi2 -- "C2":dvi1;  
    "PC8":dvi3 -- "C3":dvi1;  
    "PC8":dvi4 -- "C4":dvi1;  
    "PC9":dvi1 -- "D1":dvi1;  
    "PC9":dvi2 -- "D2":dvi1;  
}
Run Code Online (Sandbox Code Playgroud)

Phi*_*l H 42

好吧,和大多数问题一样......在我发布之后不久,我想出了答案.我需要graph [overlap=false];在文件的顶部添加.

像这样做:

graph g {
    overlap = false;

    node [shape=record,height=.1];
    /* ... */
}
Run Code Online (Sandbox Code Playgroud)

  • 我已经把它变成了一个社区wiki,因为编辑后我的原始答案文本都没有留下! (2认同)