Experiment № 041 · The story
Force-Directed Graph
Why I picked it
Most of this collection is about physical or chemical systems finding their own order. I wanted to try the same idea on something completely abstract — a graph, just dots and the lines between them, with no coordinates at all. A graph doesn't come with a picture; it's only a list of who's connected to whom. So how do you draw one? The trick that stuck, invented by Eades in 1984 and refined by Fruchterman and Reingold, is almost cheeky: pretend every node is a little magnet that shoves the others away, and every link is a spring that pulls its two ends together. Then just let go. Nobody decides where anything belongs — the layout is whatever position leaves all those pushes and pulls in balance. It felt like the purest "self-determination" piece I could build: the shape is literally not authored, it's discovered.
What I enjoy about it
The moment I love is grabbing one node and dragging it across the screen — and watching the entire structure ripple, stretch, and then flow back into a comfortable shape once I let go. It's tactile in a way a static diagram never is; the graph feels like it wants something. I also enjoy how the same two rules draw such different things depending on what's connected: a lattice relaxes into a neat mesh, a tree fans out into branches, loosely-linked clusters drift into separate islands joined by taut threads. I didn't program any of those pictures. They're just what balance looks like for that particular set of connections.
Something you might take away
This is how nearly every network diagram you've ever seen — social graphs, org charts, knowledge maps, the little bubble views in apps — actually gets laid out. No human positions the nodes; a physics simulation settles them. It's worth remembering that such a layout is a found equilibrium, not a truth: nudge the forces and the same graph rearranges into a different-looking picture, all of them equally valid. When a diagram makes a network look clustered or central or sprawling, that shape is partly the data and partly the springs. Meaning and layout aren't the same thing.