0

現在、ファイルに 2 つの json リクエストを呼び出しています。

d3.json("path/to/file.json", function(error, json) {

   d3.json("path/to/file.json", function(error, json2) {

   });
});

json 2 の構造は次のようになります。

[ 
  { "city" : "LA",
    "locations" : [ { "country" : "USA", "x" : 0, "y" : 0 } ] 
  }, 
  { "city" : "london",
    "locations" : [ { "country" : "UK", "x" : 0, "y" : 0 } ]
  }
  ... 
]

現在、json2 の x & y 値にアクセスしようとしています。ただし、私が抱えている問題は、変数で json と json2 の両方を使用したいということです。

var node = svg.selectAll("a.node")
 .data(json.cars)
 .enter().append("a")
 .attr("class", "node")
 ;

ここで、x と y の位置のみに json2 を呼び出したい

node.attr("transform", function(d, i) {
    return "translate(" + d.x + "," + d.y + ")";
});

node.append('path') 
    .attr("d", d3.svg.symbol().type(function(d) { return shape [d.name]; }).size(120))
    .style("fill", function(d) { return colors [d.name]; } );

私が求めているのは可能ですか..私は次のことを試しました:

node.attr("transform", function(d,i) {
    return "translate(" + json2.locations[d].x + "," + json2.locations[d].y + ")";
});

しかし、運がありません。どんな助けでも素晴らしいでしょう - ありがとう。

4

1 に答える 1