サンバーストでは、すべてのアークが生成された直後に、コードにルートアークを選択させるにはどうすればよいですか?
たとえば、コードでは次のようになります。
var first_arc = ""
.json("../data/flare.json", function(json) {
var path = vis.data([json]).selectAll("path")
.data(partition.nodes)
.enter().append("path")
.attr("display", function(d) { return d.depth ? null : "none"; })
.attr("d", arc)
.attr("t_name", function(d) {return d.name})
.style("fill-rule", "evenodd")
.on("click", function(d)...
中央の円弧をクリックすると、「d」として「関数」に渡されます。
(そのデータはjsonファイルの最初になります)
アップデート1:そのようにコードを変更する…</ p>
.style("fill-rule", function(d) {
if (first_arc == "") first_arc = d; return "evenodd"})
…問題を解決しました、それは戻りますobject
:
name: "flare"
children: Array[10]
...
しかし、この解決策は正しく見えず、一般的ではありません。
アップデート2:いくつかの選択を試しました。例:
first_arc = d3.select("[name='flare']")
通常は次を返しますarray
:
0: null
length: 1
parentNode: HTMLHtmlElement
__proto__: Array[0]
または「未定義」
アップデート3:
first_arc = d3.select("[t_name='flare']")
array
子供がいるサイズ1の返品:
0: SVGPathElement
__data__: Object
、__data__
私が探しているオブジェクトはどこにありますが、それを選択することができません。