将 2 个节点移到一侧,而不影响布局的其余部分

问题描述 投票:0回答:1

我有以下点布局

digraph {
  a b c

  a -> b b -> c

  b -> g1 [dir=back,constraint=false]
  b -> g2 [dir=back,constraint=false]

  g1 -> g2 [style=invis]
}

我希望 g1 和 g2 彼此更接近并以 b 为中心垂直居中,如下所示:

我尝试使用 g1 和 g2 的子图和簇以及一些不可见的边缘。我从来没有做得足够好。

graphviz dot
1个回答
0
投票

最简单的方法是设置 rankdir=LR 使节点对齐垂直而不是水平。然后使用 rank=same 保持 a、b 和 c 对齐。

digraph {
  rankdir=LR  // now alignment is vertical

  {rank=same
    a b c
  }
  a -> b
  b -> c

  b -> g1 [dir=back] 
  b -> g2 [dir=back] 
}

给予:

© www.soinside.com 2019 - 2024. All rights reserved.