我知道如何更改顶点的大小,但是当我这样做时,TreeLayout会放置节点,以使边缘消失,即。节点重叠且边缘不可见。如果更改布局(更改为KKLayout),则边缘会自动变大,并且图形看起来很干净。我想知道是否可以在TreeLayout本身中将节点隔开/增加边缘的长度?
(任何其他维护树层次结构的建议也都不错)
最佳答案
构造TreeLayout
时,可以定义节点之间的空间。这将增加边缘长度:
TreeLayout treeLayout = new TreeLayout<String, Integer>(graph, 500, 500);
如果不输入
distx
或disty
的值,则默认为50。构造函数:/**
* Creates an instance for the specified graph, X distance, and Y distance.
*/
public TreeLayout(Forest<V,E> g, int distx, int disty) {
if (g == null)
throw new IllegalArgumentException("Graph must be non-null");
if (distx < 1 || disty < 1)
throw new IllegalArgumentException("X and Y distances must each be positive");
this.graph = g;
this.distX = distx;
this.distY = disty;
buildTree();
}