2014-02-11 2 views
0

Просмотреть скользящий рисунок (http://bl.ocks.org/mbostock/950642).Как добавить изображение к краю в графе d3?

Здесь мы добавляем ссылки:

var link = svg.selectAll(".link") 
     .data(json.links) 
     .enter().append("line") 
     .attr("class", "link"); 

Вопрос заключается в том: как добавить изображение к краю (по ссылке), и поместить его в центр линии?

Это один не работает:

link.append("image") 
      .attr("xlink:href", "some.png") 
      .attr("x", function(d) { return d.source.x + (d.target.x - d.source.x)/2; }) 
      .attr("y", function(d) { return d.source.y + (d.target.y - d.source.y)/2; }) 
    .attr("width", 24) 
    .attr("height", 24); 
+0

Вам нужно добавить элемент 'image' в' svg' или 'g' для графа, а не в элемент' line'. –

+0

@LarsKotthoff спасибо, но не могли бы вы привести пример? – Andremoniy

+0

См., Например, [Здесь] (http://bl.ocks.org/djjupa/5653692). Вы можете прикреплять изображения к строке '' так же. –

ответ

1

Проблема заключается в том, что вы прилагая image элемент в line элемент - он не будет показывать этот путь. Вы должны добавить его либо к элементу верхнего уровня svg, либо к элементу g. Here - пример, который делает это.

 Смежные вопросы

  • Нет связанных вопросов^_^