Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/405.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 对多个数据使用translate函数_Javascript_D3.js - Fatal编程技术网

Javascript 对多个数据使用translate函数

Javascript 对多个数据使用translate函数,javascript,d3.js,Javascript,D3.js,目前我正在使用.filter来指定我希望在数据集中使用的数据类型。然而,当涉及到具体的定位时,它当然是通过重叠来实现的。例如: .filter(function(d) { return d.Country === 'Russia'; }) .attr("transform", function(d,i) { return "translate(-180,50)"; }); 当然,这只会使所有特定的数据在一个地方传递到另一个地方。因此,我想知道是否可以进行由我拥有的过滤器指定

目前我正在使用.filter来指定我希望在数据集中使用的数据类型。然而,当涉及到具体的定位时,它当然是通过重叠来实现的。例如:

.filter(function(d) {
    return d.Country === 'Russia';
})


.attr("transform", function(d,i) {
    return "translate(-180,50)";
});
当然,这只会使所有特定的数据在一个地方传递到另一个地方。因此,我想知道是否可以进行由我拥有的过滤器指定的多重转换。我试图做这样的事情:

.attr("transform", function(d,i) {
    return if (d.name === 'Amy') { "translate(-180,50)"; }
})
这是我的json等的一个例子


如果有人能给我指出正确的方向,那就太好了。

.attr(“transform”,function(d,i){return If(d.name=='Amy'){“translate(-180,50)”;}}}}}
应该是
.attr(“transform”,function(d,i){If(d.name=='Amy'){return translate(-180,50)”;}}}
@jacktheripper。。非常感谢你。虽然,如果我放置如下内容:.attr(“transform”,函数(d,I){if(d.Name=='Lewis'){return“translate(-170,90)”;}}).attr(“transform”,函数(d,I){if(d.Name=='Amy'){return translate(-250,90)”;}。。。当形状不同时,它似乎不起作用?任何想法为什么不:
.attr(“transform”,函数(d,i){if(d.Name=='Lewis'){return“translate(-170,90)”;}else(d.Name=='Amy'){return“translate(-250,90)”;})​?不,因为某种原因它不喜欢它,您可以尝试在我发布的JSFIDLE上进行编辑