Поддерживает ли сил макет изображения D3-JS в качестве узла?

StackOverflow https://stackoverflow.com/questions/7306250

Вопрос

D3 имеет демо из силоседенного макета графика.

Вместо кругов я хочу, чтобы все узлы на графике были изображениями.

Итак, я изменился

 .append("svg:circle")
      .attr("class", "node")
      .attr("cx", function(d) { return d.x; })
      .attr("cy", function(d) { return d.y; })
      .attr("r", 5)
      .style("fill", function(d) { return fill(d.group); })
      .call(force.drag);

к

.append("xhtml:img")
   .attr("src", "http://a577.phobos.apple.com/us/r1000/081/Purple/12/61/13/mzi.lgqdzwfu.png")
   .call(force.drag);

Но я не вижу никаких изображений. Что я делаю не так?

Это было полезно?

Решение

node.append("svg:image")
    .attr("class", "circle")
    .attr("xlink:href", "https://d3nwyuy0nl342s.cloudfront.net/images/icons/public.png")
    .attr("x", "-8px")
    .attr("y", "-8px")
    .attr("width", "16px")
    .attr("height", "16px");

Вот пример использования изображения в качестве узла: http://bl.ocks.org/950642

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top