0

keys という配列があり[1:"XXX",2:"YYY"]、ページに既に 2 つの svg 要素があります。各要素に配列値の 1 つを持たせたいのですが、以下のコードは両方の値を各テキスト ラベルに入れます。を試しkeys[i]ましたiが未定義です。どうすればこれを達成できますか?

svg.selectAll("svg").
data(keys).
enter()
    .append("svg:text")
         .attr("x", width )
         .attr("y", height).
         .attr("dx", -width/2)
         .attr("text-anchor", "middle")
         .attr("style", "font-size: 12; font-family: Helvetica, sans-serif")
         .text(function(keys) { return keys;})
         .attr("transform", "translate(0, 18)")
         .attr("class", "yAxis");
4

1 に答える 1

0

テキスト関数の引数は name を使用しますkeysd代わりに試してください:

svg.selectAll("svg")
.data(keys)
.enter()
.append("svg:text")
  .attr("x", width )
  .attr("y", height).
  .attr("dx", -width/2)
  .attr("text-anchor", "middle")
  .attr("style", "font-size: 12; font-family: Helvetica, sans-serif")
  .text(function(d) { return d;})
  .attr("transform", "translate(0, 18)")
  .attr("class", "yAxis");

attrおよびメソッドの引数はtext、データ要素を取り、その値を使用して属性またはテキスト値を計算する関数です。keys2 つの要素を持つグローバル変数 の値を使用しています。

于 2013-07-02T13:09:27.250 に答える