如何修改Graphviz配置实现左上到右下排列的层级树图?
解决方案
你只需要调整1个核心参数即可实现需求,具体修改如下:
- 将现有代码中的
rankdir=LR替换为rankdir=TB。LR是左到右的水平布局规则,TB代表从上到下的垂直布局规则,Graphviz默认的dot布局引擎会自动将根节点放在左上角位置,所有子层级依次向下向右排布,后续新增的子节点也会自动遵循这个左上到右下的生长逻辑。 - 如果不需要正交折线样式的边,想要更贴合斜向排布的直线/平滑曲线,可以同步删除
graph [splines=ortho]配置项即可。
修改后的完整示例代码如下:
graph { graph [splines=ortho] // 不需要正交边可以删掉这行 node [fontname="Sans-Serif" shape=record] rankdir=TB "Parent" -- "Child 1" "Parent" -- "Child 2" "Parent" -- "Child 3" "Parent" -- "Child 4 and then some" }
内容的提问来源于stack exchange,提问作者mrgou
相关产品推荐
相关产品推荐

