jgraphx:分层布局减少节点之间的距离

时间:2017-09-15 06:15:47

标签: java jgraphx jgraph

我正在使用jgraphx来可视化方法内部的控件。因此,我正在使用mxHierarchicalLayout。但是在结果图中,两个节点之间的距离太大。 (见img)

enter image description here

我想减少黄色标记区域。

我添加节点:

Object v1 = graph.insertVertex(parent, u.toString(), u.toString(), 0, 0, 0, 0);

将它们全部设置到同一位置。然后我使用mxHierarchicalLayout:

// define layout
mxIGraphLayout layout = new mxHierarchicalLayout(graph);
// layout graph
layout.execute(graph.getDefaultParent());

有没有办法压缩图形ui?

1 个答案:

答案 0 :(得分:1)

分层布局上定义节点之间的间距有两个参数:

  • intraCellSpacing 水平间距
  • interRankCellSpacing 垂直间距(排名,图层,层次结构之间的空格)

所以,你正在寻找第二个。

一个紧凑的例子:

var layout = new mxHierarchicalLayout(graph);
layout.edgeStyle=2;
layout.intraCellSpacing=20;
layout.interRankCellSpacing=40;

Compact mxGraph with hierarchical layout

一个扩展的例子:

var layout = new mxHierarchicalLayout(graph);
layout.edgeStyle=4;
layout.intraCellSpacing=20;
layout.interRankCellSpacing=70;

Expanded mxGraph with hierarchical layout

您可以看到示例 edgeStyle 中有另一个参数来定义边的不同样式

有关详细信息,请查看mxGraph Hierarchical layout documentation

亲切的问候