【问题标题】:Graphviz connect nested subgraphsGraphviz 连接嵌套子图
【发布时间】:2021-10-29 19:51:56
【问题描述】:

问题

与这个问题(GraphViz - How to connect subgraphs?)类似,我想连接一些子图。只有这一次我需要连接嵌套的子图...... Graphviz 似乎对我的语法不满意。

来源

digraph G {
        compound=true

        subgraph cluster_family1 {
                graph [ label="Family1"; ]
                subgraph cluster_genus1 {
                        graph [ label="Genus1"; ]
                        species_1
                        species_2
                }
                subgraph cluster_genus2 {
                        graph [ label="Genus2"; ]
                        species_3
                        species_4
                }
        }
        subgraph cluster_family2 {
                graph [ label="Family2"; ]
                subgraph cluster_genus2 {
                        graph [ label="Genus3"; ]
                        species_5
                        species_6
                }
        }
        species_2 -> species_3 [ lhead=cluster_genus1 ] # TODO: Fix this line!!
}

生成的图表没有我希望的所需子图箭头。相反,我得到了错误:

dot -Tsvg source.dot -o output.svg
Warning: Two clusters named cluster_genus2 - the second will be ignored
Warning: species_2 -> species_3: head not inside head cluster cluster_genus1

【问题讨论】:

    标签: syntax graphviz diagram dot


    【解决方案1】:

    两个错误:

    • 重复的集群名称:(cluster_genus2)
    • 混淆了你的优势的头尾

    您可能需要其他调整,例如,如果您希望 species_1species_2

    之前
    digraph G {
            compound=true
    
            subgraph cluster_family1 {
                    graph [ label="Family1"; ]
                    subgraph cluster_genus1 {
                            graph [ label="Genus1"; ]
                            species_1
                            species_2
                    }
                    subgraph cluster_genus2 {
                            graph [ label="Genus2"; ]
                            species_3
                            species_4
                    }
            }
            subgraph cluster_family2 {
                    graph [ label="Family2"; ]
                    subgraph cluster_genus3 {  // fixed duplicate name
                            graph [ label="Genus3"; ]
                            species_5
                            species_6
                    }
            }
            species_2 -> species_3 [ ltail=cluster_genus1 ] # changed head to tail??
    }
    

    捐赠:

    【讨论】:

      猜你喜欢
      • 2021-11-22
      • 1970-01-01
      • 2011-01-01
      • 2021-07-10
      • 2021-03-20
      • 2023-03-14
      • 2018-03-17
      • 2021-11-10
      • 2014-01-31
      相关资源
      最近更新 更多