UNPKG

naksha-react-ui

Version:

Visualize grid heat map or layer map from elastic search or https://github.com/strandls/naksha

46 lines (34 loc) 1.2 kB
'use strict'; var cb = require('./colorbrewer/colorbrewer.js'); module.exports = function (color_scheme, is_legend_stops_data_driven, no_stops, counts) { var stops = []; if (counts === undefined || counts.length === 0) return stops; stops.push([0, cb[color_scheme][no_stops][0]]); if (!is_legend_stops_data_driven) { var max_count = counts[counts.length - 1]; for (var i = 1; i < no_stops; i++) { var stop = Math.round(max_count / no_stops) * i; stops.push([stop, cb[color_scheme][no_stops][i]]); } return stops; } var interval = Math.round(counts.length / no_stops); if (interval === 0) { for (var _i = 1; _i < no_stops; _i++) { stops.push([counts[_i], cb[color_scheme][no_stops][_i]]); }return stops; } var pre_stop = 1; for (var _i2 = 1; _i2 < no_stops; _i2++) { var _stop = counts[interval * _i2]; if (_stop <= pre_stop) { var index = interval * _i2; while (index < counts.length && counts[index++] <= pre_stop) {} if (index === counts.length) return stops; _stop = counts[index]; } pre_stop = _stop; stops.push([_stop, cb[color_scheme][no_stops][_i2]]); } return stops; };