D3 force layout fix root node at the center

Alfred picture Alfred · Feb 18, 2014 · Viewed 12.3k times · Source

I managed to draw some basic d3 force layout graph, but struggling how to fix root node at the center.

My data is rather simple; one root node with one-level children. Only one level. Another particular thing about my graph is that the link distance varies based on some parameter.

I want root node to be at the center of the graph.

Setting its property 'fixed':true doesn't work. Any idea to place root node at the center?

Answer

FernOfTheAndes picture FernOfTheAndes · Feb 18, 2014
force.on("tick", function() {
    nodes[0].x = w / 2;
    nodes[0].y = h / 2;

That should do it.