Hierarchies
import { hierarchy } from 'd3-hierarchy'
const root = hierarchy(data, (d) => d.children)
hierarchy(data, children)
构造分层数据根节点,返回节点对象。data 为根节点,children 为子节点访问器函数。
interface Node {
data: any
depth: number
height: number
parent: Node | null // 根节点为 null
children?: Node[] // 叶子节点为 undefined
value?: number
}
data: 节点的数据depth: 根节点为 0,每个后代加 1height: 叶子节点为 0parent: 父节点,根节点为nullchildren: 子节点数组,叶子节点为undefinedvalue: 节点的值
默认的 children 访问器函数:
function children(d) {
return d.children
}
node.ancestors()
node.ancestors(): Node[]
返回祖先节点数组,从此节点开始,然后是每个父节点,直到根节点。
node.descendants()
node.descendants(): Node[]
返回后代节点数组,从此节点开始,然后是按拓扑顺序的每个子节点。