2017-03-04 14 views
0

3 개의 하위 그래프가 하나씩 배치되어있는 그래프가 있는데, 서로 위에 하나씩 쌓아두기를 원합니다 (나는 그 내용의 방향을 원하지 않습니다. 변경할 하위 그래프).그래프 그래프에서 하위 그래프를 하나 아래에 맞 춥니 다.

간단한 예 :

digraph G { 
 
rankdir=TB; 
 
    subgraph cluster_lkg{ 
 
     subgraph cluster_sentence_1{ 
 
      "A1","A2","A3" 
 
      "A1" -> "A2" 
 
      "A1" -> "A3" 
 
     } 
 
     subgraph cluster_concepts_1{ 
 
      "B1","B2","B3" 
 
      "B1" -> "B2" 
 
      "B1" -> "B3" 
 
     } 
 
    } 
 
    subgraph cluster_fkgs{ 
 
      "C1","C2","C3" 
 
      "C1" -> "C2" 
 
      "C1" -> "C3" 
 
    } 
 

 
}

답변

0

당신은 (또는, 더 정확하게, 클러스터 내의 노드) 순서로 당신의 rankdir = TB을 적용하려면 클러스터를 연결해야합니다. 당신은 눈에 보이지 않는 모서리를 사용하여 수행 할 수 있습니다 :

digraph G 
{ 
    rankdir=TB;  
    subgraph cluster_lkg 
    { 
     subgraph cluster_sentence_1 
     { 
      "A1","A2","A3" 
      "A1" -> "A2" 
      "A1" -> "A3" 
     } 
     subgraph cluster_concepts_1{ 
      "B1","B2","B3" 
      "B1" -> "B2" 
      "B1" -> "B3" 
     } 
     //A1 -> B1; 
    } 
    subgraph cluster_fkgs 
    { 
      "C1","C2","C3" 
      "C1" -> "C2" 
      "C1" -> "C3" 
    } 
    edge[ style = invis ]; 
    { A2 A3 } -> B1; 
    { B2 B3 } -> C1; 
} 

노드 C1가 잘못 정렬

enter image description here

얻을 수있는 -이이 중첩 클러스터에서 오는 생각하지만 난 이것에 대한 조리법이 없습니다. 어쨌든 도움이되기를 바랍니다.