如何在d3散点图中获取记录的id?

时间:2013-04-24 19:52:16

标签: d3.js

我已经附加了我的数据并分配了ID如下:

svg.selectAll("circle").data(csv).enter().append("circle")
                    .attr("id", function(d){return "row"+d["ROW ID"];});

“ROW ID”是包含我的数据的ID的列的名称。 现在我想在圆圈上添加一个点击事件,并将当前点的ID保存在一个新变量中,以便用它来调用其他函数。 谁能告诉我如何获得当前所选点的“行ID”?

THX

1 个答案:

答案 0 :(得分:0)

你想要这样的事情还是我误解了你的问题?

svg = d3.select("svg");

csv = [
  {"row ID": "id1",
   "x": 20,
   "y": 30},
  {"row ID": "id2",
   "x": 30,
   "y": 50}

]

svg.selectAll("circle").data(csv).enter().append("circle")
  .attr("id", function(d){return "row"+d["ROW ID"];})
  .attr("cx", function(d){return d.x})
  .attr("cy",function(d){return d.y})
  .attr("r",10)
  .style("fill", "black");

circles = d3.selectAll("circle");

circles.on("click",function(d) {
  alert(d["row ID"]);
})

此处的互动版:http://tributary.io/inlet/5455132