
        var scale = node.findObject('SCALE');
        if (scale === null || scale.type !== go.Panel.Graduated) return;
        // keep the new value within the range of the graduated panel
        var min = scale.graduatedMin;
        var max = scale.graduatedMax;
        var v = node.data.value;
        if (v === undefined) v = Math.floor((max - min) / 2); // default to middle value
        if (v < min) v++;
        else if (v > max) v--;
        else v += Math.random() < 0.5 ? -0.5 : 0.5; // random walk
