접을 수있는 레이아웃에서 노드를 동적으로 추가 할 때 몇 가지 문제가 있습니다. 내 데이터 세트는 동적으로 생성되어 강제 레이아웃이 생성 될 때마다 객체가 변경되므로 D3 mbostock에서 JSON을 초기 시작점으로로드하는 대신 로컬 객체를 사용하는 예제를 사용했습니다.D3 Collapsible Force 레이아웃 레이아웃에 노드를 동적으로 추가합니다.
나는 pan + zoom을 추가했지만 노드를 추가하면 작동하지 않는 것 같습니다. 정적 객체 (테스트 용)가 있고 addNode 함수가 노드를 클릭 할 때 호출됩니다. var childrenTest=[ {"name": "Title", "size": 3938}, {"name": "Title", "size": 3938}, {"name": "Title", "size": 3938} ];
g.data.children[1].children = childrenTest;
을하고 붕괴에 대한 데이터를 평평하게하고이를 업데이트하기 전에 노드 사이의 링크를 생성 예상되는 update();
을 실행 : 나는 노드를 통해 추가하려합니다.
불행히도이 작업을 수행하면 내 그래프에서 부동 클러스터를 생성하는 내 그래프가 완전히 깨져서 링크와 노드가 사라지는 것으로 보입니다. 왜 노드를 제대로 추가하지 않는지 알아 내는데 도움이되는지 궁금합니다. 여기
내 코드의 예입니다 https://jsfiddle.net/Diffusion_net/hu6t2ywb/9/(주 : addNode 명 기능은 때문에 테스트 목적으로 만 체크에 한 번 자식 노드 클릭에 노드를 추가합니다)
당신에게
감사