2017-04-25 29 views
0

それぞれのs_iがd_iの下にある見栄えのよい整列グラフを作成しようとしています。これは私のコードです:graphvizでサブグラフ内の特定のノードを垂直に整列する方法

digraph G { 
    rankdir="LR" 

    graph [bgcolor="#EAEAF2" fontname="Noto Sans", colorscheme=gnbu3] 
    node [fontname="Noto Sans" style=filled, colorscheme=gnbu3] 
    edge [fontname="Noto Sans"] 

    node[fontname="Noto Sans"]; 
    subgraph cluster_1 { 
     node [style=filled, color=1]; 
     edge [style="invis"]; 
     s3[group=3]; 
     s0 -> s1 -> s2 -> s3; 
     label = "Raw signal"; 
     color=2; 
    } 

    subgraph cluster_0 { 
     color=lightgrey; 
     node [style=dotted,color=""]; 
     edge [style="invis"]; 
     d0[label="..."] 
     d1[label="..."] 
     d2[label="..."] 
     d3[label="...", group=f] 
     label = "CNN"; 
     d0 -> d1 -> d2 -> d3; 
    } 
    edge[style=dotted, weight=10000] 
    s0 -> d0; 
    s1 -> d1; 
    s2 -> d2; 
    s3 -> d3; 
} 

私は何を得ることは何でもある:

{rank=same s0->d0}; 

S0とD0ノードが整列になったが、彼らはサブクラスタの外に落ちる:私が追加しようとした場合 http://imgur.com/MG0xtS3

答えて

1

サブグラフの順序を最初に変更し(cluster_0)、edge[style=dotted, weight=10000]edge[style=dotted, constraint=false]に変更してください。

これは、サブグラフを(外観の)正しい順序に置き、2つのサブグラフのノード間のエッジがランキングに影響を及ぼさないようにします。

関連する問題