digraph { dpi = 300.0; rankdir = "LR"; splines = false; cluster = true; node [shape = diamond;]; // The graphs end up with the correct order, i.e. Task 1 *above* Task 2, when // this is first. subgraph cluster_ColleagueB { label = "Task B"; B1 -> B2 -> B3; B0 [style = invis;]; B3 -> B0 [style = invis;]; } subgraph cluster_ColleagueA { newrank = true; label = "Task A"; A1 -> A2 -> A3 -> A4; } }