我正在使用D3.js创建一个散点图,并希望将多值映射用于SVG属性。但它不起作用,也没有任何错误。
我的svg中只有空白的矩形标签,如下所示:
我使用以下代码:
var bar = svg.selectAll("rect")
.data(data)
.enter()
.append("rect")
.attr({
class: "bar",
x:function(d, i){return xScale(i)},
y: function(d){return yScale(d);},
width: xScale.bandwidth(),
height: function(d){return h - yScale(d);},
fill: function(d){return 'rgb('+d*3 + ',' + d*6 + ',' + d*9 + ')';}
});
我做错了吗?因为如果我将它们放入单独的行中并且每个行都有.attr()
调用它就可以正常工作。
我正在使用d3v4。是否支持多值地图?