我有一个行路径,它接受一个如下数组的数组:
[[{x:0,y:1},{X:3,y:4],[{x:0,y:2},{x:3,y:6},{x:8,y:10}]]
我的直线路径如下:
this.line = D3['line']()
.x(function (d) {console.log(d); return d.x; })
.y(function (d) {console.log(d); return d.y; });
这很好用,现在我想修改我的数据,这样我就可以包含每个数据的填充和文本,所以我将数据格式改为这样。
[{"data":[{x:0,y:1},{X:3,y:4]}
,"fill":"red","txt":"test","x":"0","y":0},
{data:[{x:0,y:2},{x:3,y:6},{x:8,y:10}],"fill":"red","txt":"test","x":"0","y":0}
]
然后我将行路径修改为如下所示:
this.line = D3['line']()
.x(function (d) {console.log(d); return d.data.x; })
.y(function (d) {console.log(d); return d.data.y; });
看起来因为数据是一个对象不是一个数组,所以它不会为该路径获取循环。我检查了DOM,路径确实得到了创建,只是路径数据永远不会填充它。代码从未在obj:[]中使用它执行行路径。我如何将数组传递给它?
由于
答案 0 :(得分:1)
.attr("d",function(d){return self.line(d.data)})