function map(array, depth) {
	            if (depth >= keysFunction.length) {
	                return array;
	            }
	            var i = -1;
	            var n = array.length;
	            var keyFunction = keysFunction[depth++];
	            var mapObject = {};
	            var valuesByKey = {};

	            while (++i < n) {
	                var keyValue = keyFunction(array[i]);
	                var values = valuesByKey[keyValue];

	                if (values) {
	                    values.push(array[i]);
	                }
	                else {
	                    valuesByKey[keyValue] = [array[i]];
	                }
	            }

	            zrUtil.each(valuesByKey, function (value, key) {
	                mapObject[key] = map(value, depth);
	            });

	            return mapObject;
	        }
Old data.
@private
@type {module:echarts/chart/helper/WhiskerBoxDraw}