关于 graphviz
用于生成 Graphviz DOT 语法图表的技能,说明有向与无向图、节点和边属性、布局设置、集群及常见语法问题。
主要功能
- 01有向图与无向图语法
- 02节点、边和集群属性
- 03布局与间距指导
- 04DOT 输出语法规则
适用场景
- 01用有向边绘制依赖关系
- 02绘制无向关系图
- 03将图表节点分组到集群
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ markdown-viewer/ skills --skill graphviz安装后在 Claude Code 中输入/graphviz确认已加载。
附带文件references/syntax.md
详细介绍
Graphviz DOT 图表生成器
重要: 代码围栏标识符请使用
```dot,不要使用```graphviz。
快速入门: 选择 digraph(有向)或 graph(无向)→ 使用属性(形状、颜色、标签)定义节点 → 使用 -> 或 -- 连接节点 → 设置布局(rankdir、间距)→ 用 ```dot 围栏包裹。默认布局为从上到下(rankdir=TB),集群名称必须以 cluster_ 开头,并使用分号。
关键语法规则
规则 1:集群命名
❌ subgraph backend { } → Won't render as box
✅ subgraph cluster_backend { } → Must start with cluster_
规则 2:带空格的节点 ID
❌ API Gateway [label="API"]; → Invalid ID
✅ "API Gateway" [label="API"]; → Quote the ID
✅ api_gateway [label="API Gateway"]; → Use underscore ID
规则 3:边的语法差异
digraph: A -> B; → Directed arrow
graph: A -- B; → Undirected line
规则 4:属性语法
❌ node [shape=box color=red] → Missing comma
✅ node [shape=box, color=red]; → Comma separated
规则 5:HTML 标签
✅ shape=plaintext for HTML labels
✅ Use < > not " " for HTML content
常见问题
| 问题 | 解决方案 |
|---|---|
| 节点重叠 | 增大 nodesep 和 ranksep |
| 布局不佳 | 更改 rankdir 或添加 {rank=same} |
| 边交叉 | 使用 splines=ortho 或调整节点顺序 |
| 集群未显示 | 名称必须以 cluster_ 开头 |
| 标签未显示 | 检查引号转义 |
输出格式
```dot
digraph G {
[diagram code]
}
```
相关文件
如需高级布局控制和复杂样式,请参阅以下参考资料:
- syntax.md — 布局控制(rankdir、splines、rank)、HTML 标签、边样式、集群子图和基于记录的节点
评论
支持 Markdown