Have you tried PlantUML? It provides means of adjusting the layout.
I use it often, most of the time the adjustment is good enough for engineering communication within minutes of adjustment.
It could be better if there is more cohesive documentation of its support for the adjustment.
I had to search on Google many times to figure out how to add the adjustment.
The adjustment consists of directives of placement and direction of links, the length of links, grouping of notes, etc.
I feel that it's very promising with more popular support.
thefunnyman|5 years ago
zebnyc|5 years ago