我是d3的新手。使用mbostock的基本“flare.json”,我试图结合可缩放的sunbust的两个特征:
在尺寸/数量之间切换的能力
添加文字标签see etmajers example
添加标签需要访问svg'g'元素,但切换到count似乎需要从根分区的路径而不能访问'g'。
计数/大小切换的路径:
var path = svg.datum(root).selectAll("path")
.data(partition.nodes)
.enter().append("path")
.attr("d", arc)
.style("fill", function(d) { return color((d.children ? d : d.parent).name); })
.on("click", click)
.each(stash);
文本标签的路径分为两部分:
var g = svg.selectAll("g")
.data(partition.nodes(root))
.enter().append("g");
var path = g.append("path")
.attr("d", arc)
.style("fill", function(d) { return color((d.children ? d : d.parent).name); })
.on("click", click);
问题是在计数和大小之间切换时路径未重置
path
.data(partition.value(value).nodes)
.transition()
.attrTween("d", arcTweenData);
任何见解都将受到赞赏!