डी 3 में selectAll का उपयोग करते समय संलग्न करना

मैं डी 3 का उपयोग कर रहा हूं और मैं उस तत्व को जोड़ना चाहता हूं जिसे मैं जोड़ रहा हूं।

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...

मैं उन तत्वों के लिए एक अवधि जोड़ना चाहता हूं जो मैं डाल रहा हूं, लेकिन मुझे नहीं पता कि कैसे। लोग ऐपेंड का उपयोग करने के लिए कहते हैं लेकिन मुझे नहीं पता कि यह 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('Spantastic!');

    svg.append(rect);
});

मैं इस तरह की चीज़ से बहुत परिचित नहीं हूं, मैंने अनुमान लगाया है कि यह कैसे होना चाहिए, लेकिन कुछ भी काम नहीं करता है (डी 3 में ऑब्जेक्ट के बारे में कोई तरीका नहीं है "indexOf")। कोई विचार? धन्यवाद।

0
@LarsKotthoff धन्यवाद! मैं इसे गलत कर रहा था और Google पर जवाब खोजने की कोशिश की और लोगों ने इस बारे में बात की कि आप इसका उपयोग कैसे कर सकते हैं .append .append क्योंकि मूल वस्तु को वापस नहीं किया गया था, और मैंने सोचा कि यह मेरी समस्या थी।
जोड़ा लेखक user1756980, स्रोत
कोड के अपने पहले ब्लॉक के अंत में आपको बस .append ("span") जोड़ने में सक्षम होना चाहिए। वह प्रत्येक rect में span तत्व जोड़ देगा।
जोड़ा लेखक Lars Kotthoff, स्रोत
अच्छा, मैं इसे संदर्भ के उत्तर के रूप में जोड़ दूंगा।
जोड़ा लेखक Lars Kotthoff, स्रोत

1 उत्तर

कोड के अपने पहले ब्लॉक के अंत में आपको बस .append ("span") जोड़ने में सक्षम होना चाहिए। वह प्रत्येक rect में span तत्व जोड़ देगा।

0
जोड़ा