D3 v4 - force layout
This example demonstrates a force-directed graph layout using D3 v4's physical simulation API. The visualization shows 100 labeled nodes connected by random links, with node sizes varying between 8 and 28 pixels. The simulation applies multiple forces—link attraction, collision avoidance, many-body repulsion, and centering—to position the nodes dynamically. Dragging nodes with the mouse temporarily restarts the simulation with higher alpha, allowing interactive manipulation of the network. The code uses `d3.forceSimulation`, `d3.forceLink`, `d3.forceCollide`, `d3.forceManyBody`, and `d3.drag` to render SVG circles and lines, updating positions on each simulation tick.