【问题标题】:Graphviz overlapping edge labelsGraphviz 重叠边缘标签
【发布时间】:2017-06-17 14:12:00
【问题描述】:

我正在处理a Python script,它可以发现网络中的所有思科设备,现在我正在寻找添加一个为用户创建图表的选项。

我正在使用 graphviz Python 模块,并且仍在编写代码,但这就是它在此时生成的内容:

graph {
graph [nodesep=1.5 ranksep=1]
edge [fontsize=10 weight=0.5]
    "R3.lab"
        "R3.lab" -- "R1.lab" [headlabel="Fa0/1" taillabel="Fa0/1"]
    "R2.lab"
        "R2.lab" -- "R1.lab" [headlabel="Fa3/0" taillabel="Fa3/0"]
    "R2.lab"
        "R2.lab" -- "R1.lab" [headlabel="Fa1/0" taillabel="Fa0/1"]
    "R4.lab"
        "R4.lab" -- "R1.lab" [headlabel="Fa4/0" taillabel="Fa4/0"]
    "R2.lab"
        "R2.lab" -- "R3.lab" [headlabel="Fa0/0" taillabel="Fa0/0"]
    "R5.lab"
        "R5.lab" -- "R3.lab" [headlabel="Fa4/0" taillabel="Fa3/0"]
    "R4.lab"
        "R4.lab" -- "R3.lab" [headlabel="Fa1/0" taillabel="Fa0/0"]
    "R4.lab"
        "R4.lab" -- "R2.lab" [headlabel="Fa1/0" taillabel="Fa1/0"]
    "R4.lab"
        "R4.lab" -- "R5.lab" [headlabel="Fa0/1" taillabel="Fa0/1"]
}

问题是一些节点的边缘标签(例如 R4)相互重叠,很难看出哪个标签适用于哪个边缘。这引出了一个问题,我该如何确保不会发生这种重叠?

解决方案需要是动态的(而不是仅在此图中修复它),以便它也适用于其他网络。

任何建议将不胜感激。谢谢。

【问题讨论】:

    标签: python python-2.7 graph graphviz dot


    【解决方案1】:

    您可以尝试在节点中使用边距,以使它们更大。 边缘的空标签也有助于创造更多的空间。

    试试这个图表:

    图{ 图 [bgcolor="#333333" fontcolor=white fontsize=16 label="网络地图" rankdir=BT] 节点 [color="#006699" fillcolor="#006699" fontcolor=white fontname=Helvetica margin=0.4 shape=box style=filled] 边缘 [箭头=开放颜色=绿色字体颜色=白色字体名称=Courier 字体大小=14 样式=虚线] R4 R5 R1 R2 R3 R2 -- R3 [标签="" headlabel="Fa0/0" taillabel="Fa0/0"] R4 -- R2 [标签=""头标签="Fa1/0"尾标签="Fa1/0"] R2 -- R1 [标签="" headlabel="Fa3/0" taillabel="Fa3/0"] R4 -- R1 [标签="" headlabel="Fa4/0" taillabel="Fa4/0"] R4 -- R5 [标签="" headlabel="Fa0/1" taillabel="Fa0/1"] R3 -- R1 [标签="" headlabel="Fa0/1" taillabel="Fa0/1"] R2 -- R1 [标签="" headlabel="Fa0/1" taillabel="Fa1/0"] R5 -- R3 [标签="" headlabel="Fa3/0" taillabel="Fa4/0"] }

    您可以在 gist 中查看完整代码:https://gist.github.com/natenka/4d991cacc69e7353c84504c1581a5014

    【讨论】:

    • 完美,谢谢。感谢您为 Python 脚本付出的所有努力!
    猜你喜欢
    • 1970-01-01
    • 2022-01-08
    • 2010-10-24
    • 2014-09-18
    • 2012-10-10
    • 2020-02-09
    • 1970-01-01
    • 1970-01-01
    • 2013-07-23
    相关资源
    最近更新 更多