Я плохо знаком с JUNG. Я пытался потянуть график дерева с помощью TreeLayout, но дерево никогда не выходит как реальное дерево. Каждый раз дерево выглядит по-другому. Как я могу заставить дерево быть похожим на нормальное дерево с корнем на вершине и остальной части узлов, убывающих от него?
Вы должны инициализировать TreeLayout
после добавления вершин к графу. Я попробовал это, и у меня это сработало.
Вы должны сделать что-то вроде следующего: (обратите внимание, что это код моей годичной давности, он может показаться вам немного устаревшим)
Layout<GraphVertex, GraphEdge> layout; //create a layout
layout = new TreeLayout<GraphVertex, GraphEdge>((Forest<GraphVertex, GraphEdge>) g);
// initialize your layout using the graph you created, which has to be of type forest
vv.setGraphLayout(layout);
// set the layout of the visualization viewer you are using to be the layout you just created (the tree layout)
GraphVertex
Класс, представляющий вершина в графе, GraphEdge
представляет ребра в вашем графе.