Я хочу использовать d3 с Angular.
Я хочу отобразить узел со ссылкой.
Когда я объявляю и заполняю свой массив непосредственно в компоненте, это работает, но когда я хочу получить элемент с http-сервера, у меня появляется эта ошибка: <g> attribute transform: Expected number, "translate(NaN,NaN)
listNoeud;
this.httpService.node.subscribe(item => {
this.listNoeud = item;
for (let i = 1; i < this.listNoeud.length; i++) {
this.nodes.push(new NodeGraph(this.listNoeud[i].id, this.listNoeud[i].label, this.listNoeud[i].type, this.listNoeud[i].statut));
}
});
Моя модель NodeGraph
export class NodeGraph implements d3.SimulationNodeDatum {
index?: number;
name: string;
statut: string;
x?: number;
y?: number;
vx?: number;
vy?: number;
fx?: number | null;
fy?: number | null;
difficult: string;
id: string;
linkCount: number = 0;
constructor(id, name, difficult, statut) {
this.id = id;
this.name = name;
this.difficult = difficult;
this.statut = statut;
}
}
Когда я console.log
массив моих узлов с наблюдаемыми данными, у меня есть:
vx: NaN
vy: NaN
x: NaN
y: NaN