From 7318ebd2f9a41bc84fb6bd8cabc81da2cba1267d Mon Sep 17 00:00:00 2001 From: Yohan Boniface Date: Thu, 12 Oct 2023 10:06:19 +0200 Subject: [PATCH] choropleth: be more defensive when consuming breaks --- umap/static/umap/js/umap.layer.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/umap/static/umap/js/umap.layer.js b/umap/static/umap/js/umap.layer.js index 9525c217..084e93a5 100644 --- a/umap/static/umap/js/umap.layer.js +++ b/umap/static/umap/js/umap.layer.js @@ -161,7 +161,7 @@ L.U.Layer.Choropleth = L.FeatureGroup.extend({ } let mode = this.datalayer.options.choropleth.mode, classes = +this.datalayer.options.choropleth.classes || 5, - breaks = [] + breaks if (mode === 'manual') { const manualBreaks = this.datalayer.options.choropleth.breaks if (manualBreaks) { @@ -178,12 +178,12 @@ L.U.Layer.Choropleth = L.FeatureGroup.extend({ breaks = ss.ckmeans(values, classes).map((cluster) => cluster[0]) breaks.push(ss.max(values)) // Needed for computing the legend } - this.options.breaks = breaks + this.options.breaks = breaks || [] this.datalayer.options.choropleth.breaks = this.options.breaks.map(b => +b.toFixed(2)).join(',') const fillColor = this.datalayer.getOption('fillColor') || this.defaults.fillColor let colorScheme = this.datalayer.options.choropleth.brewer if (!colorbrewer[colorScheme]) colorScheme = 'Blues' - this.options.colors = colorbrewer[colorScheme][breaks.length - 1] || [] + this.options.colors = colorbrewer[colorScheme][this.options.breaks.length - 1] || [] }, getColor: function (feature) {