我正在尝试使用 d3.js 玩一下,并且暂时喜欢它 :)
我无法弄清楚的一件事是如何快速编辑相同的值。让我解释一下,这是一个简单的甜甜圈:
var visu = d3.select("#svg_donut");
var skillScale = d3.scale.linear().domain([0, 100]).range([0, 2*Math.PI]);
var arcBorder = d3.svg.arc().innerRadius(60)
                      .outerRadius(62)
                      .startAngle(0);
var arcBar = d3.svg.arc().innerRadius(60)
                           .outerRadius(70)
                           .startAngle(0);
var progBorder = visu.append("path").datum({endAngle: skillScale(100)})
                             .style("fill", "white")
                             .attr("d", arcBorder)
                             .attr("transform", "translate(75, 75)");
var progBar = visu.append("path").datum({endAngle: skillScale(75)})
                                  .style("fill", "white")
                                  .attr("d", arcBar)
                                  .attr("transform", "translate(75, 75)");
var text = visu.append("text").text("FOO")
                             .attr("transform", "translate(75, 83)")
                             .style("fill", "white")
                             .attr("text-anchor", "middle");
而我想做的是,在 的hover上visu,顺利地改变outerRadius的progbar。我现在有点坚持,所以如果你能帮忙:)