SKILL.md
唯讀
名稱
graphviz
描述
使用 DOT 語言建立有向/無向圖,並自動排版。最適合相依性樹狀圖、呼叫圖、套件階層圖及需要精細邊緣路線的模組關係圖。
Graphviz DOT 圖表產生器
重要: 請使用
```dot作為程式碼圍欄識別碼,而非```graphviz。
快速入門: 選擇 digraph (有向) 或 graph (無向) → 定義節點及其屬性 (形狀、顏色、標籤) → 使用 -> 或 -- 連接 → 設定佈局 (rankdir、間距) → 包在 ```dot 圍欄中。預設:由上到下 (rankdir=TB),叢集名稱必須以 cluster_ 開頭,使用分號。
關鍵語法規則
規則 1:叢集命名
❌ subgraph backend { } → 不會顯示為方框
✅ subgraph cluster_backend { } → 必須以 cluster_ 開頭
規則 2:含空格的節點 ID
❌ API Gateway [label="API"]; → 無效 ID
✅ "API Gateway" [label="API"]; → 用引號括住 ID
✅ api_gateway [label="API Gateway"]; → 使用底線 ID
規則 3:邊緣語法差異
digraph: A -> B; → 有向箭頭
graph: A -- B; → 無向線條
規則 4:屬性語法
❌ node [shape=box color=red] → 缺少逗號
✅ node [shape=box, color=red]; → 逗號分隔
規則 5:HTML 標籤
✅ 使用 shape=plaintext 搭配 HTML 標籤
✅ 使用 < > 而非 " " 作為 HTML 內容
常見陷阱
| 問題 | 解決方案 |
|---|---|
| 節點重疊 | 增加 nodesep 和 ranksep |
| 佈局不佳 | 變更 rankdir 或加入 {rank=same} |
| 邊緣交叉 | 使用 splines=ortho 或調整節點順序 |
| 叢集未顯示 | 名稱必須以 cluster_ 開頭 |
| 標籤未顯示 | 檢查引號跳脫 |
輸出格式
```dot
digraph G {
[圖表程式碼]
}
```
相關檔案
如需進階佈局控制與複雜樣式,請參考以下文件:
- syntax.md — 佈局控制 (rankdir、splines、rank)、HTML 標籤、邊緣樣式、叢集子圖與記錄型節點






