Javascript 重叠图例d3.js
我正在创建三角形形状的图例。一个是“是”,另一个是“否”。通过运行下面的代码,它将生成两个三角形,但它们是重叠的。我试图通过使用这行代码Javascript 重叠图例d3.js,javascript,d3.js,Javascript,D3.js,我正在创建三角形形状的图例。一个是“是”,另一个是“否”。通过运行下面的代码,它将生成两个三角形,但它们是重叠的。我试图通过使用这行代码.attr(“y”,函数(d,I){return 50+I*40;})将它们分开,但它似乎不起作用。 有人能告诉我怎么修吗?谢谢 必须更新组的“平移y”属性,而不是路径。而且也不需要额外计算文本和路径的y属性 .attr("transform", function(d, i) { return "translate(" + (w + 150)
.attr(“y”,函数(d,I){return 50+I*40;})
将它们分开,但它似乎不起作用。
有人能告诉我怎么修吗?谢谢
必须更新组的“平移y”属性,而不是路径。而且也不需要额外计算文本和路径的y属性
.attr("transform", function(d, i) {
return "translate(" + (w + 150) + "," + (30+i*40) + ")";
});
工作代码片段:
var w=40//样本图表宽度
var color=d3.scale.category20c();
var svg=d3.select(“body”).append(“svg”).attr({height:500,width:400});
变量legendname=[“是”、“否”];
var legend=svg.selectAll(“.legend”)
.数据(legendname)
.enter().append(“g”)
.attr(“类”、“图例”)
.attr(“转换”,函数(d,i){
返回“translate”(“+(w+150)+”,“+(30+i*40)+”);
});
图例.append(“路径”)
.attr(“d”,d3.svg.symbol().type(“三角形向上”).size(128))
.样式(“填充”,功能(d,i){
返回颜色(i);
});
图例。追加(“文本”)
.attr(“dx”,10)
.attr(“dy”,“.4em”)
.文本(功能(d){
返回d;
})
三角形或文本是否重叠?当你说它“似乎不起作用”是什么意思?只是三角形。文本不重叠。我的意思是我试着用这个,attr(“y”,函数(d,I){return 50+I*40;})把它们分开,这是一条有星星的线。但是没有什么变化,它们仍然重叠。看起来你的路径是一样的,这就是为什么三角形重叠路径应该是一样的。因为它们是相同的三角形,只是颜色不同。
.attr("transform", function(d, i) {
return "translate(" + (w + 150) + "," + (30+i*40) + ")";
});