2014-03-05 96 views

回答

1

而是圓的,你將不得不準備<image> SVG元素並正確放置。在這個例子中我用小圓圈圖標:

node.append('image') 
    .attr('xlink:href', 'images/circle.png') 
    .attr('x', function(d, i) { return -d.r/2; }) 
    .attr('y', function(d, i) { return -d.r/2; }) 
    .attr('width', function(d, i) { return d.r + 'px'; }) 
    .attr('height', function(d, i) { return d.r + 'px'; }) 

更新:具有不同的圖像解決方案取決於您的設計和數據結構。一個可能的解決方案是定義圖像的陣列:

var images = [ 'admiration.png', 'joy.png', 'hope.png', 'sadness.png', 'surprise.png', 'anger.png', 'worry.png', 'frustration.png']; 

,然後選擇特定圖像(假設是,圖像駐留在images目錄):

node.append('image') 
    .attr('xlink:href', function(d, i) { 
     return 'images/' + images[i]; 
    }) 
    .attr('x', function(d, i) { return -d.r/2; }) 
    .attr('y', function(d, i) { return -d.r/2; }) 
    .attr('width', function(d, i) { return d.r + 'px'; }) 
    .attr('height', function(d, i) { return d.r + 'px'; }) 
+0

這取代各界與相同的圖像。我想爲每個圈子提供一個不同的圖像。我如何實現這一目標? –

+0

您需要爲圖像賦予不同的xlink:href屬性。 –

+0

感謝您的更新。出於某種原因,這個解決方案對我來說並不合適。屏幕空白,控制檯中沒有錯誤。 –