На самом деле достаточно одного невидимого узла:
digraph G {
graph [center, rankdir=TB, bgcolor=black];
edge [arrowsize=1, color=red, dir=none];
node [penwidth=1, color=red, fontcolor=white, labelloc=b, shape=point, width=0.01];
{
rank=same;
BB1P1;
BB1P[color=white, width=0.1];
BB1PV;
BB1P2;
}
{
rank=same;
BB2P1;
BB2PV;
BB2P[color=white, width=0.1];
BB2P2;
}
BB1P1 -> BB1P -> BB1PV -> BB1P2;
BB2P1 -> BB2PV -> BB2P -> BB2P2;
BB1P1 -> BB2P1[style=invis];
}
Или, что еще проще, просто измените rankdir
на LR
:
digraph G {
graph [center, rankdir=LR, bgcolor=black];
edge [arrowsize=1, color=red, dir=none];
node [penwidth=1, color=red, fontcolor=white, labelloc=b, shape=point, width=0.01];
BB1P[color=white, width=0.1];
BB2P[color=white, width=0.1];
BB1P1 -> BB1P -> BB1PV -> BB1P2;
BB2P1 -> BB2PV -> BB2P -> BB2P2;
}