0

私は d3 を使用しており、追加する要素に追加したいと考えています。

svg.append('g').attr('foo', 'bar')
    .selectAll('rect').data(data)
    .enter().append('rect')
        .attr('class', function(d) { return 'some-class' })
        .attr('y', 0)
        .attr('height', 42)
        .attr('x', function(d) { return d.x); })
        .attr('width', 9001);
        // hot damn would it be cool if I could just .append a span here...

挿入する要素にスパンを追加したいのですが、方法がわかりません。人々はappendToを使用すると言いますが、それがselectAllでどのように機能するかわかりません。要素をループして追加しようとしましたが、それも機能せず、理由がわかりません。

svg.append('g').attr('foo', 'bar');
_.each(data, function(d) {
    var rect = $('rect')
        .attr('class', function() { return 'some-class'; })
        .attr('y', 0)
        .attr('height', 42)
        .attr('x', function() { return d.x; })
        .attr('width', 9001)
        .append('<span class="cool-class">Spantastic!</span>');

    svg.append(rect);
});

私はこの種のことにはあまり詳しくありません。どうあるべきかを推測していくつかの変更を加えましたが、何も機能しません(メソッド「indexOf」を持たないオブジェクトに関するd3が含まれています)。何か案は?ありがとう。

4

1 に答える 1

0

.append("span")最初のコード ブロックの末尾に追加するだけでよいはずです。spanこれにより、各要素に要素が追加されますrect

于 2013-12-02T21:38:46.537 に答える