我已經得到了我想要的Graphviz佈局和可視化我的圖表。該圖有122個邊和123個節點。邊緣有4種不同的類型,我希望它們在視覺上可以區分。但是我還沒有決定什麼是這樣做的最好的方式,我想與錶盤周圍玩了一下。不幸的是,我沒有看到任何類似邊的「class」或「stylesheet」屬性。我只能爲每個邊緣單獨設置視覺屬性(大量重複)。也許我錯過了什麼?是否可能有某種方式將邊緣添加到4個不同的組中,然後對組進行設計,而不是單獨設計每個邊緣?的Graphviz:如何在同一樣式分配到一組邊緣?
21
A
回答
30
爲了通過組樣式邊緣(或節點)而不是單獨使用子圖。
像這樣:
digraph G {
node [style=filled,color="#5D8AA8", fillcolor="#5D8AA8"];
subgraph c1 {
edge [color="#004225", arrowsize="0.6", penwidth="1"];
"node 1" -> "node 3";
"node 5" -> "node 7";
"node 1" -> "node 2";
label = "";
}
subgraph c2 {
edge [color="#FBEC5D", arrowsize="1.2", penwidth="3"];
"node 2" -> "node 4";
"node 4" -> "node 6";
"node 3" -> "node 5";
"node 6" -> "node 8";
label = "";
}
begin -> "node 1";
start -> "node 2";
"node 1" -> "node 4"
"node 2" -> "node 6";
start [shape=diamond];}
所以,如果你把上面的代碼在一個文件瓦特/「.DOT」擴展名;然後呈現在graphviz的,,你會看到不同類型的邊,外觀睿智。
一種類型是隻是默認(顏色=黑色,厚度= 1等)。 - 即,這些邊緣未分配給子圖。
另外兩種類型的邊(一個薄的,深綠色基和厚,明亮的黃色組)基於分配兩個子集羣之一樣式。
子圖經常被用來在視覺上加亮一個節點集羣(即,從在圖中的節點的其餘部分區分節點的特定連續「組」);然而,沒有任何要求(正如你可以從我的例子中看到的那樣),你選擇通過賦值給一個給定的子圖來選擇樣式的邊緣,屬於一個連續的「節點組」,你可以指定你希望賦值給的任何邊一個給定的子圖。)
給我,按組造型節點類似於定義一個類並將其分配到的div的HTML標記集合的HTML實踐
12
雖然@豆豆的答案是正確的(使用子圖指定風格相近的對象組),我相信我的例子是更好:
digraph G {
compound=true;
subgraph columns {
c0r0 -> c0r1;
c0r1 -> c0r2;
c1r0 -> c1r1;
c1r1 -> c1r2;
c2r0 -> c2r1;
c2r1 -> c2r2;
}
subgraph rows {
edge [color=red, constraint=false];
c0r0 -> c1r0;
c1r0 -> c2r0;
c0r1 -> c1r1;
c1r1 -> c2r1;
c0r2 -> c1r2;
c1r2 -> c2r2;
}
}
cat square-digraph.dot | dot -Tsvg -o square-digraph.svg
相關問題
- 1. GraphViz,分組相同的邊緣
- 2. 從graphviz分組輸出邊緣
- 3. Graphviz如何控制邊緣
- 4. 如何將邊緣標籤放置在graphviz的邊緣
- 5. 如何使邊緣在Graphviz中重疊?
- 6. Graphviz交叉邊緣
- 7. 在graphviz中從節點到邊緣繪製邊緣
- 8. Graphviz隱藏的邊緣
- 9. graphviz的聯合邊緣
- 10. 的Graphviz ---邊標籤太靠近另一個邊緣
- 11. GraphVIZ邊緣彎曲90度
- 12. Graphviz重疊邊緣標籤
- 13. GraphViz創建常規邊緣
- 14. Graphviz:將邊緣標籤放在另一側
- 15. Graphviz的邊緣不可辨/邊緣標籤覆蓋
- 16. 如何在幀邊緣接觸另一個邊緣時獲取該邊緣?
- 17. 邊緣樣式對於樹
- 18. 如何在graphviz中強制邊緣的位置?
- 19. Graphviz Dot中奇怪的邊緣位置
- 20. 奇怪的graphviz邊緣重疊
- 21. 移動的Graphviz邊緣閃開
- 22. 權以點(Graphviz的)左邊緣
- 23. Graphviz - 節點之間的水平邊緣
- 24. Graphviz,更改邊緣的大小
- 25. Graphviz的邊緣設置初始方向
- 26. graphviz:顏色方面的邊緣
- 27. 在graphviz中將相同顏色的節點分組在一起
- 28. 如何使元素的邊緣貼到CSS的另一個元素的邊緣?
- 29. 如何在graphviz中使用錐形邊緣
- 30. 如何在Graphviz中添加邊緣標籤?
我們如何設置子圖的默認風格? – Pacerier 2014-07-16 19:48:50
不需要子圖。在邊緣樣式聲明下使用「edge [color = ... etc]」定義的所有邊將使用該樣式。 – Bousch 2015-08-19 10:18:58