私は非常に単純な連想配列にデータを読み込んで棒グラフで表示する非常に単純なD3の例があります。連想配列をD3のデータとして使用
私はこの方法を使用して表示するものは何も得られないようです。代わりに、私は間にタスクを挿入する必要があります:データを連想配列に読み込み、そのデータを単純な配列にコピーし、単純な配列を使って棒グラフを表示します。
chart.selectAll("div")
.data(genreAssociative)
.enter().append("div")
.style("width", function(d) { return d * 10 + "px"; })
.text(function(d) { return d; });
上記は機能しません。
genreSimple = [];
for (var genre in genreAssociative) genreSimple.push(genreAssociative[genre]);
chart.selectAll("div")
.data(genreSimple)
.enter().append("div")
.style("width", function(d) { return d * 10 + "px"; })
.text(function(d) { return d; });
上記はありません。単純な配列を仲介として使用します。連想配列ではなく、標準配列で反復処理する特別な方法はありますか?
これは、含まれている情報から、chart.data関数がjavascriptオブジェクト(別名「連想配列」)を受け入れないことがわかります。この場合、配列に変換する以外に選択肢はありません。 – jbabey
JavaScriptでは連想配列と呼ばれていません。私はこの用語でハングアップする傾向があります。なぜなら、通常、連想配列の人はPHPのように配列として宣言するからです。 –