別のsvg内で他のsvg全体を「使用」することは可能ですか?d3で生成した地図を同じページのアイコンとして使いたい。これは私が試したものですが、機能しません。
<svg id="map">
svg stuff here
</svg>
<svg id="bar">
svg stuff here
<use xlink:href="#map" height="20" width="30" ...>
</svg>
また、クローン作成アプローチを試しましたが、別のsvg内にsvg全体が含まれることになり、スケーリングできませんでした。例えば。makeicon( "#map"、 "#icon")
function makeicon(source, destination) {
//https://groups.google.com/forum/?fromgroups=#!topic/d3-js/-EEgqt29wmQ
var src = d3.select(source);
var dest = d3.select(destination);
if (!src.empty() && !dest.empty()) {
var newNode = d3.select(dest.node().insertBefore(src.node().cloneNode(true),
src.node().nextSibling))
.attr("id", "newnode")
.attr("width", null) // remove height and width of original svg
.attr("height", null)
.attr("viewBox", "0 0 20 30"); // try to make it smaller
return newNode;