With the default parameters, give it 2000 iterations or so to get the idea.
A self-organizing map is a fairly simple type of neural network, used mostly as a dimensionality reduction
algorithm for data visualization purposes.
You see a network of neurons trying to fit a blob of data by picking a random datapoint, then dragging
the closest neuron towards it. The dragging strength and the influence on neighboring neurons decay exponentially.
The network starts out as a random tangle, quickly smoothens out, then starts filling the space more densely.
You could do roughly the same thing with a string of numbered beads and a printout of a scatterplot
(for a 2D to 1D reduction), by trying to place the string so it roughly covers big clusters of points on the
plot. You could then represent the 2D data (x, y coordinates of a point) on a 1D number line (number on the bead
closest to the particular point), and have a decent mapping for new datapoints as well.
Check out the Wikipedia article