如何将图例添加到多行系列图表中?我试过,但没有得到任何图例显示。d3.js将图例添加到多行系列图表
的这里块:
有一个缺陷,当各种系列汇聚到同一点,像零。所有的标签都会叠加在一起。传统的传说将非常有用,而不是去寻找这些标签。
我尝试添加该
var legend = svg.append("g")
.attr("class", "legend")
.attr("height", 100)
.attr("width", 100)
.attr('transform', 'translate(-20,50)');
legend.selectAll('rect')
.datum(function(d) { return {name: d.name, value: d.values[d.values.length - 1]}; })
.append("rect")
.attr("x", width)
.attr("y", function(d, i){ return i * 20;})
.attr("width", 10)
.attr("height", 10)
.style("fill", function(d) {
return color.domain(d3.keys(d[0]).filter(function(key) { return key !== "day"; }));
});
legend.selectAll('text')
.datum(function(d) { return {name: d.name, value: d.values[d.values.length - 1]}; })
.append("text")
.attr("x", width)
.attr("y", function(d, i){ return i * 20 + 9;})
.text(function(d) {
return d.name;
});
到代码的末尾,我的数据是如何格式化的键值名(d.name)匹配,但它并不显示。在一个点上它显示全黑盒子到图形的右侧,这样意味着我接近,但我缺少一些重要的东西
任何见解赞赏
我添加了一个点,并且您的代码适用于我。 var legend = svg.selectAll('。g') – theIrishUser 2014-03-05 14:22:13