Я работаю в 3djs и вызываю два объекта.Один - circle
, другой - rect
.
var node = svg.append("g")
.attr("class", "nodes")
.selectAll("circle")
.data(d3GraphData.nodes)
.enter().append("circle")
.attr("r", function (d) {
if (d.type === "Customer") { return 5; }
})
var nodo = svg.append("g")
.attr("class", "nodes")
.selectAll("rect")
.data(d3GraphData.nodes)
.enter().append("rect")
.attr("height", function (d) {
if (d.type === "patongenoA") { return 34; }
...
})
.attr("width", function (d) {
if (d.type === "patongenoA") { return 34; }
...
})
Я пытался соединить их со ссылками, но каждый прямоугольник идет в угол:
Я заметил, что function ticked
Нарисуйте ссылки на узел так:
function ticked() {
link
.attr("x1", function(d) {
return d.source.x*3.4;
})
.attr("y1", function(d) {
return d.source.y*3.4;
})
.attr("x2", function(d) {
return d.target.x*3.4;
})
.attr("y2", function(d) {
return d.target.y*3.4;
});
node
.attr("cx", function(d) {
return d.x*3.4;
})
.attr("cy", function(d) {
return d.y*3.4;
});
Итак, я добавляю nodo
:
nodo
.attr("width", function(d) {
return d.x*3.4;
})
.attr("height", function(d) {
return d.y*3.4;
});
, но это не работает.
Может ли кто-нибудь помочь мне с этим?
заранее спасибо,
Игнасио