2013-03-05 9 views
12

के साथ एक छवि संलग्न करें मैं अपने चार्ट में '.svg' एक्सटेंशन के साथ एक svg छवि जोड़ने की कोशिश कर रहा हूं (d3 के साथ बनाई गई एक और svg छवि)।d3 svg एक्सटेंशन

इस कोड है:

d3.select("#chart1 svg") 
    .append("svg:image") 
    .attr("xlink:href", "img/icons/sun.svg") 
    .attr("width", 40) 
    .attr("height", 40) 
    .attr("x", 228) 
    .attr("y",53); 

आप मैं सेट कर रहा हूं "XLink: href" देख सकते हैं विशेषता है, लेकिन d3 परिवर्तन इस ब्राउज़र में href करने के लिए:

<image href="img/icons/sun.svg" width="40" height="40" x="228" y="53"></image> 

वास्तव में , यदि मैं पीएनजी एक्सटेंशन का उपयोग करता हूं तो यह कोड पूरी तरह से काम करता है। कोई उपाय?

+1

मुझे इसके साथ समस्याएं भी हैं। जाहिर है, यदि उपसर्ग एक ज्ञात नेमस्पेस है तो डी 3 उपसर्ग को हटा देता है। यहां नामस्थानों के बारे में अधिक जानकारी है: https://github.com/mbostock/d3/wiki/Namespaces –

+1

जब तक विशेषता 'setAttributeNS' के साथ जोड़ दी जाती है, तब तक यह सभी ब्राउज़रों में ठीक काम करता है (और यह स्पष्ट करने के लिए डी 3 करता है)। विशेषता पर अनुपलब्ध उपसर्ग वास्तव में केवल एक मुद्दा है यदि आप दस्तावेज़/तत्व क्रमबद्धता को किसी विशेष तरीके से करना चाहते हैं। –

+0

ऐसा लगता है कि यह आज भी एक बात है ... क्या किसी को अब तक कोई समाधान मिला है? –

उत्तर

14

कोड के रूप में काम करना चाहिए है - यहाँ आप d3 के लिए एक .svg फ़ाइल संलग्न का एक उदाहरण देख सकते हैं:

http://jsfiddle.net/am8ZB/

मत भूलना कि यह वास्तव में यह तस्वीर देखते हैं, लेकिन आप अभी है संभव है इसे नहीं देख सकता- आपको ब्राउज़र डेवलपर टूल का उपयोग करके पृष्ठ का निरीक्षण करना चाहिए ताकि यह देखने के लिए कि दृश्य दृश्य क्षेत्र से बाहर रखा गया है (उदाहरण के लिए, आपके x/y मानों के कारण)।

#chart1 पर अधिक जानकारी इस मामले में सहायता करेगी।