如何获取我在d3中单击的特定弧的数据?

时间:2015-01-29 17:40:18

标签: javascript d3.js

这是我的d3项目的a link

function click(d) {
  path.transition()
    .duration(duration)
    .attrTween("d", arcTween(d));

  // Somewhat of a hack as we rely on arcTween updating the scales.
  text.style("visibility", function(e) {
      return isParentOf(d, e) ? null : d3.select(this).style("visibility");
    })
    .transition()
    .duration(duration)
    .attrTween("text-anchor", function(d) {
      return function() {
        return x(d.x + d.dx / 2) > Math.PI ? "end" : "start";
      };
    })
    .attrTween("transform", function(d) {
      var multiline = (d.name || "").split(" ").length > 1;
      return function() {
        var angle = x(d.x + d.dx / 2) * 180 / Math.PI - 90,
            rotate = angle + (multiline ? -.5 : 0);
        return "rotate(" + rotate + ")translate(" + (y(d.y) + padding) + ")rotate(" + (angle > 90 ? -180 : 0) + ")";
      };
    })
    .style("fill-opacity", function(e) { return isParentOf(d, e) ? 1 : 1e-6; })
    .each("end", function(e) {
      d3.select(this).style("visibility", isParentOf(d, e) ? null : "hidden");
    });
  }
});

这部分是我的车轮的点击功能。你可以清楚地想出这些问题。

0 个答案:

没有答案