I’m assuming you have a directed graph which you layout with dot.
I don’t think there’s a magic switch to prevent overlapping edges. Graphviz tries to do that out of the box.
Some suggestions that may help, depending on the graph:
- edge concentrators (concentrate=true): Merge multiple edges with a common endpoint into single edges, and have partially parallel edges share parts of their path.
- ports : Edges can have their origin and endpoint on a specific port (n, ne, e, se, s, sw, w, nw, w, c, _). Depending on the edge ports, the edge changes its form (spline).
- invisible nodes : There may be cases where introducing invisible nodes to route edges can have the desired effect.