d3用一个函数设置多个属性

时间:2016-05-18 13:06:22

标签: javascript d3.js svg attributes

大家好,我有svg行的以下示例对象

{
  _id: 5,
  coordinates:{
       x1: 100,
       y1: 100,
       x2: 500,
       y2: 500,
 }

假设我在变量data中有这些对象的数组。 我想在一次attr()调用中设置所有相关的线路属性。 我知道您可以将对象作为属性传递,然后d3将设置所有属性。 由于我有一个对象数组,我创建了一个返回对象的函数:

let objectsRender = svg.selectAll("line")
                       .data(data)
                       .enter()
                       .append("line")
                       .attr(function(d)      { return d.coordinates;})
                       .attr("id", function(d){ return prefix +d._id;});

但它似乎不起作用,因为没有设置x或y值。 谁能给我解决我的问题?

1 个答案:

答案 0 :(得分:4)

我担心你不能在一行中做到这一点,你必须这样做:

_except_handler