title:(d,n)=>`${n.ancestors().reverse().map(d=>d.data.name).join(".")}`,// hover text
sort:(a,b)=>d3.descending(a.height,b.height),// reduce link crossings
tree:d3.cluster,
width:1152,
curve:d3.curveStep
})
root=stratify(data)
stratify=d3.stratify()
.id(d=>d[childColumn])
.parentId(d=>d[parentColumn])
parentColumn=data.columns[0]
childColumn=data.columns[1]
data=FileAttachment("data-withRoot@14.csv").csv()
import{Tree}from"@d3/tree"
Purpose-built for displays of data
Observable is your go-to platform for exploring data and creating expressive data visualizations. Use reactive JavaScript notebooks for prototyping and a collaborative canvas for visual data exploration and dashboard creation.