I'm experimenting with clustering algorithms in my work, right now I'm trying SOM's, and I found it confusing to interpret the neighbor distance visualization (plotsomnd). The documentation states neighbor distances go from black to yellow, but I found it confusing: black means low or high? Yellow means low or high? The option of inserting a colorbar doesn't help, it's not bound to the plot, so it just shows a generic parula bar from 0 to 1.
I tried watching it iterate to see if I could figure out what it means. The map starts flat red, in 1 iteration it becomes mostly yellow except for a stripe of reds and blacks, so I thought it meant yellow is low distance and reds/blacks mean high distance (so, the algorithm is trying to segment the space in 2, 3, etc). But as it iterates this "structure" disappears, the map becomes mostly yellow with some red and black stains or spots; in this scenario I'm more likely to think reds and blacks mean "strong clusters" (low distance), while yellow means background noise (high distance, no clusters). So I have 2 opposing interpretations, I don't really know which is right, if any. To make it even harder to interpret, the plotsomhits doesn't show the same spatial patterns, most of my heavily hit neurons are on distributed on the large yellow areas.
Another doubt is that it seems to produce really unstable solutions. When it seems to have converged to somewhere (the map is mostly unchanging between iterations), it suddenly changes completely in a single iteration. Can anyone give me some insight on why does it happen and how to keep it "under control"?