我必须在两个不同的轴上写文字/标签。这是我的数据大小,我想在两个轴上打印hello和name,具体取决于数组。但现在只有一个轴正在打印。请帮帮我:
enter code here
<script>
var dat =[1,2,3];
var canvas = d3.select("body").append("svg")
.attr("height",500)
.attr("width",1000)
var x=10 ; var y=30; var space =50;
var x1=0 ; var y1=30;
var gene =canvas.selectAll("text")
.data(dat)
.enter()
.append("text")
.attr("x",function(d){x=x+space; return x; })
.attr("y",30)
.text("hello")
var gene2 =canvas.selectAll("text")
.data(dat)
.enter()
.append("g")
.attr("x",function(d){return x1; })
.attr("y",function(d) {y1=y1+space; return y1; })
.text("name")
</script>
答案 0 :(得分:0)
您没有区分两组<text>
元素。代码使用第一个数据绑定创建节点,然后它选择这些相同的节点并再次绑定相同的数据(使用相同的默认绑定键),这将简单地更新现有节点上的数据(即{{ 1}}选择将为空。)
这与this类似。有一些解决方案可供选择。