-4
私はこのようになります「test.json」と呼ばれるJSONファイルに着いたとき:d3.jsの外側の括弧付きのJSON?
[{
"name":"abc",
"parent":"null",
"children":[],
}
]
データ全体を包む外側の括弧[]
を意味し、とd3.jsでそれを使用することはできません階層機能:
{
"name":"abc",
"parent":"null",
"children":[],
}
:
d3.json("test.json", function(a) {
var hierarchy = d3.hierarchy(a),
links = hierarchy.links()
nodes = hierarchy.descendants();
は今、私は離れてブラケットを離れるときに、「test.json」はこのようになっていることを意味し、そのファイルを使用することが可能です
私の質問は次のとおりです:これは一般的なd3.jsの特有の問題ですか、おそらくhierarchy
関数の組み合わせであるのでしょうか、かっこ[]でファイル全体をラップすると、常に動作しませんか?
ある[RTFM](HTTPS: //github.com/d3/d3-hierarchy#hierarchy)〜* "指定された階層データからルートノードを構築します。指定されたデータは、ルートノードを表す**オブジェクト**でなければなりません。 "オブジェクトではなく配列を渡しています。 'd3.hierarchy(a.pop())'を試してください – Phil
配列には複数の要素を入れることができます。配列に複数のオブジェクトが含まれている場合は、何をすべきかを決める必要があります。 – Barmar
@phil: 'd3.hierarchy(a.pop())'は本当に問題を解決しました。私は複数の要素を持っていたときにも働いた。 –