Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/reporting-services/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用graphviz时如何避免边和节点重叠?_Graphviz_Dot - Fatal编程技术网

使用graphviz时如何避免边和节点重叠?

使用graphviz时如何避免边和节点重叠?,graphviz,dot,Graphviz,Dot,作为标题,我想画一个ELF文件格式的图像。ELF标题有程序标题表和节标题表的偏移量,所以我想使用两个箭头指针来指出关系。但即使在设置了overlap=false和splines=true之后,边缘也与节点(记录)重叠。我搜索了一会儿,但我的情况是,箭头在某种程度上指向了它自身的一部分 下面是我用来生成png文件的点文件 digraph g { //margin="1" overlap='scale' graph [rankdir="LR"] "ELF File" [ label="<f0

作为标题,我想画一个ELF文件格式的图像。ELF标题有程序标题表和节标题表的偏移量,所以我想使用两个箭头指针来指出关系。但即使在设置了overlap=false和splines=true之后,边缘也与节点(记录)重叠。我搜索了一会儿,但我的情况是,箭头在某种程度上指向了它自身的一部分

下面是我用来生成png文件的点文件

digraph g {
//margin="1"
overlap='scale'
graph [rankdir="LR"]

"ELF File" [
label="<f0> ELF Header\n e_shoff=0x118| <f1> Program Headers Table | <f2> .text | <f3> .data | <f4> .rodata| <f5> .comment | <f6> .shstrtab | <f8> .symtab | <f9> .rel.text | <f7> Section Table"
shape="record"
];

"ELF File":f0 -> "ELF File":f1 [label="e_phoffset"]
"ELF File":f0 -> "ELF File":f7 [label="e_shoff"]
}
有向图g{
//margin=“1”
重叠比例'
图[rankdir=“LR”]
“ELF文件”[
label=“ELF Header\n e_shoff=0x118 |程序头表|.文本|.数据|.rodata |.注释|.shstrtab |.symtab |.rel.text |节表”
shape=“记录”
];
“ELF文件”:f0->“ELF文件”:f1[label=“e_phoffset”]
“ELF文件”:f0->“ELF文件”:f7[label=“e_shoff”]
}

一种可能的解决方案是在其中一条边上使用“east”节点端口,以便该边显示在记录的另一侧。您可以通过在节点名称后面附加
:e
来完成此操作。例如:

"ELF File":f0:e -> "ELF File":f7:e [label="e_shoff"]

这很有帮助!谢谢