знаю что проблема геморная, но может вдруг за последние годы чтото изменилось и появилось чтонить простенькое для частных случаев
нужен именно алгоритм, ибо придется встраивать в свою приложуху редактирования графов. ну или разве что есть чтото готовое на жс, будь он неладен
у меня конкретный граничный случай - направленный ацикличный граф, горизонтально ориентированный (входы слева, выходы справа)
наткнулся кстать на старую тему
Алгоритм автоматического размещения элементов диаграммы на сцене
https://yed.yworks.com/support/manual/layout.html
списочек впечатляет, хз что из этого взять, придется тыкать по очереди
p.s.
лол, а я сейчас понял что мегапрог ведь с этой траблой пополной столкнется (если к тому времени не пропадет) и наверняка скажет что это все от текстовых языков и на графическом он такое сделает за пару минут