关系网络布局

按连接关系、中心节点或图距离排列网络

选择布局

想看到什么布局
让相连的节点靠近force、d3-force、force-atlas2、fruchterman
看某个节点周围的关系radial,通过 focusNode 选择中心节点
按节点度数分圈concentric,通过 sortBy: 'degree' 按度数分层
用平面上的距离表现图中节点的远近mds,通过 linkDistance 调整距离尺度

配置与示例

示例默认使用放射布局。中心节点通过 focusNode 设为 0,圈间距通过 unitRadius 设为 68。用 Layout 切换布局,对比同一张关系图的排布。

放射布局和 MDS 需要先注册。 可选布局

正在加载示例…
紫色节点是 0。切换 Layout,观察它和其他节点的位置变化。
const layouts: Record<string, LayoutConfig> = {
  radial: { type: 'radial', focusNode: '0', unitRadius: 68 },
  concentric: { type: 'concentric', sortBy: 'degree', nodeSize: 24 },
  force: { type: 'force', linkDistance: 100 },
  'd3-force': { type: 'd3-force', linkDistance: 100 },
  'force-atlas2': { type: 'force-atlas2', kr: 8, kg: 2 },
  fruchterman: { type: 'fruchterman', gravity: 12 },
  mds: { type: 'mds', linkDistance: 80 },
};

力导向布局的常用参数见布局配置参考,后台计算见Worker 布局指南。其他效果见布局示例合集。