diff --git a/src/component/visualMap/PiecewiseModel.ts b/src/component/visualMap/PiecewiseModel.ts index 3800d2b72d..a0fff4b7bb 100644 --- a/src/component/visualMap/PiecewiseModel.ts +++ b/src/component/visualMap/PiecewiseModel.ts @@ -104,7 +104,7 @@ export interface PiecewiseVisualMapOption extends VisualMapOption { * When categories: {'cate1': false, 'cate3': true} When selected === false, means all unselected. */ selected?: Dictionary - selectedMode?: 'multiple' | 'single' + selectedMode?: 'multiple' | 'single' | boolean /** * By default, when text is used, label will hide (the logic diff --git a/src/component/visualMap/PiecewiseView.ts b/src/component/visualMap/PiecewiseView.ts index f3f260593e..d94b0ed758 100644 --- a/src/component/visualMap/PiecewiseView.ts +++ b/src/component/visualMap/PiecewiseView.ts @@ -215,10 +215,14 @@ class PiecewiseVisualMapView extends VisualMapView { ) { const visualMapModel = this.visualMapModel; const option = visualMapModel.option; + const selectedMode = option.selectedMode; + if (!selectedMode) { + return; + } const selected = zrUtil.clone(option.selected); const newKey = visualMapModel.getSelectedMapKey(piece); - if (option.selectedMode === 'single') { + if (selectedMode === 'single' || selectedMode === true) { selected[newKey] = true; zrUtil.each(selected, function (o, key) { selected[key] = key === newKey;