Cytoscape.js Макет «Дыхание первым»

#angular #networking #layout #graph-theory #cytoscape

Вопрос:

Мое требование состоит в том, чтобы создать Breadth-First график с корневым узлом в центре. Когда я использую center=true опцию, края перекрываются.

Есть ли какое-либо решение для этого?

Ответ №1:

Ммм…. у widthfirst нет свойства центра, можете ли вы сослаться на круг??

введите описание изображения здесь

Однако я думаю, что для вашей цели вы можете использовать концентрическую компоновку (https://js.cytoscape.org/#layouts) указание корня.

Если вы хотите использовать широту и алгоритм, создающий пересекающиеся края, вы можете

  1. Откройте проблему для улучшения этого эстетического критерия
  2. Попробуйте сгенерировать твик на основе результата алгоритма

вы можете изменить координаты узлов с помощью node.position({ x: ...., y: .... })

Комментарии:

1. Да, я имел в виду круг, спасибо за предложение