ในDOT
ภาษาสำหรับGraphViz
ฉันกำลังพยายามแสดงแผนภาพการพึ่งพา ฉันต้องสามารถมีโหนดในคอนเทนเนอร์และเพื่อให้สามารถสร้างโหนดและ / หรือคอนเทนเนอร์ขึ้นอยู่กับโหนดและ / หรือคอนเทนเนอร์อื่น ๆ
ฉันใช้subgraph
เพื่อเป็นตัวแทนของภาชนะของฉัน การเชื่อมโยงโหนดทำงานได้ดี แต่ฉันไม่สามารถหาวิธีเชื่อมต่อกราฟย่อยได้
รับโปรแกรมด้านล่างฉันต้องสามารถเชื่อมต่อcluster_1
และcluster_2
มีลูกศร แต่สิ่งที่ฉันพยายามสร้างโหนดใหม่แทนการเชื่อมต่อกลุ่ม:
digraph G {
graph [fontsize=10 fontname="Verdana"];
node [shape=record fontsize=10 fontname="Verdana"];
subgraph cluster_0 {
node [style=filled];
"Item 1" "Item 2";
label = "Container A";
color=blue;
}
subgraph cluster_1 {
node [style=filled];
"Item 3" "Item 4";
label = "Container B";
color=blue;
}
subgraph cluster_2 {
node [style=filled];
"Item 5" "Item 6";
label = "Container C";
color=blue;
}
// Renders fine
"Item 1" -> "Item 2";
"Item 2" -> "Item 3";
// Both of these create new nodes
cluster_1 -> cluster_2;
"Container A" -> "Container C";
}
fdp
มันบอกว่าคุณจำเป็นต้องใช้ ตัวอย่างที่เชื่อมโยงและรายการด้านบนทั้งสองทำงาน (บรรทัดสุดท้ายในตัวอย่างที่นี่จำเป็นต้องใช้ชื่อกราฟย่อยไม่ใช่ป้ายกำกับและอาจเป็นการดีที่จะรวมความยาวบรรทัดสำหรับกราฟ) มันค่อนข้างแน่นเหมือนเดิม)
fdp
@nlucaroni ใช้v2.28.0 และคัดลอก / วางแหล่งที่มาจากตัวอย่างบรรทัดที่เชื่อมต่อกับศูนย์กลางของกราฟย่อยไม่ใช่ไปที่ขอบ หากคุณเปิด. dot ใน OmniGraffle พวกเขาจะเชื่อมต่ออย่างถูกต้องในขณะที่neato
และdot
ทั้งสองสร้างโหนดฟุ่มเฟือยสำหรับคลัสเตอร์