如何用JS画树形图

2024-10-12 20:13:58

1、首先,设置弦图的布局,var chord_layout = d3.layout.chord() .padding(0.03) //节点之间的间隔 .sortSubgroups(d3.descending) //排序 .matrix(population); //输入矩阵,应用此布局转换数据。

如何用JS画树形图

3、然后,绘制节点,先定义相关变量,很熟悉了,绘制节点(即分组,有多少个城市画多少个弧形),及绘制城市名称,节点位于弦图的外部。节点数组 groups 的每一项,都有起始角度和终止角度,因此节点其实是用弧形来表示的,这与饼状图类似。

如何用JS画树形图

5、然后,将 city_name[i] 城市名称赋值给 d.name 。trans酆璁冻嘌form 的参数:用 trans造婷用痃late 进行坐标变换时,要注意顺序: rotate -> translate(先旋转再平移)。 此外, ( d.angle > Math.PI*3/4 && d.angle < Math.PI*5/4 ) ? "rotate(180)" : "")意思是,当角度在 135° 到 225° 之间时,旋转 180°。不这么做的话,下方的文字是倒的。

如何用JS画树形图
猜你喜欢