Depending on the order of the links in the dataset, the algorithm may assign circular links to be all top or all bottom, as it bases its decisions on what the source/target node have already been assigned.
The algorithm could be optimised to give more weight to balancing top and bottom, but which may result in more overlaps.
Or, the links could be resorted to provide a more pleasing output (with possible flag to turn off/on, as this would result in the nodes being displayed in different order across the page)
And/or, links from nodes in the end column to nodes in the first column could be go either way regardless of the link types associated to the node, as those will have no overlaps with normal links
Depending on the order of the links in the dataset, the algorithm may assign circular links to be all top or all bottom, as it bases its decisions on what the source/target node have already been assigned.
The algorithm could be optimised to give more weight to balancing top and bottom, but which may result in more overlaps.
Or, the links could be resorted to provide a more pleasing output (with possible flag to turn off/on, as this would result in the nodes being displayed in different order across the page)
And/or, links from nodes in the end column to nodes in the first column could be go either way regardless of the link types associated to the node, as those will have no overlaps with normal links