gpt4 book ai didi

Graphviz:如何使子图节点成一直线排列?

转载 作者:行者123 更新时间:2023-12-04 05:14:52 25 4
gpt4 key购买 nike

我正在尝试以下列方式使用Graphviz可视化我的源代码存储库的历史记录(从上到下或从左到右无关紧要):

m1 -> m2 ----> m3 -----> m4 -> m5
\ ^
\-> b1 -> b2 -> b3 -/
给定此点文件:
digraph git {
subgraph master {
m1 -> m2 -> m3 -> m4 -> m5
}
subgraph branch {
m2 -> b1 // branch from master
b1 -> b2 -> b3
b3 -> m4 // merge into master
}
}
Graphviz diagram
我应该设置什么属性以将子图的所有节点(属于同一分支)放置在一条直线上?

最佳答案

最简单的解决方案是将分支和合并边的weight设置为0:

digraph git {
rankdir=LR
subgraph master {
m1 -> m2 -> m3 -> m4 -> m5
}
subgraph branch {
m2 -> b1[weight=0] // branch from master
b1 -> b2 -> b3
b3 -> m4[weight=0] // merge into master
}
}
rankdir=LR将布局从上到下更改为从左到右。

另请参阅我对类似问题的回答:
Forcing "main line" nodes into a straight line in Graphviz (or alternatives)

关于Graphviz:如何使子图节点成一直线排列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5259782/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com