nodes = [{'name ': '1A', уровень: 1},{'name': '1B', уровень: 1},{'name': '2A', уровень: 2},{'name': '2B'}.. .]
ссылки = [{'source': '1A', 'target':'2A'}, {'source': '1A', target: '3B'}...]

Как вы можете видеть на диаграмме, я нарисованные случайно, линии начнут сильно путать быстро.
Я также не уверен, существует ли вообще рекомендуемый алгоритм для сортировки.
Во время тестирования я создал базовое дерево (где для каждого листа есть только один родительский элемент, но несколько дочерних элементов), но я создал дочерних элементов рекурсивно из каждого родителя, и именно так я сгруппировал их вместе. Это было в основном для тестирования, и он не использует ни один из существующих методов d3 (скорее проверка концепции для меня), но я не был уверен, как реализовать что-то подобное с помощью
Подробнее здесь: https://stackoverflow.com/questions/793 ... et-y-value
Мобильная версия