clearGradientColorMap(id, duration) {
    if (this._gradientMapStack.length > 0) {
      // find gradient map data index
      let gradientMapDataIndex = -1;
      for (let i = 0, il = this._gradientMapStack.length; i < il; i++) {
        if (this._gradientMapStack[i].id === id) {
          gradientMapDataIndex = i;
          break;
        }
      }
      if (gradientMapDataIndex !== -1) {
        if (gradientMapDataIndex === this._gradientMapStack.length - 1) {
          // pop top of stack
          this._gradientMapStack.pop();

          if (this._gradientMapStack.length > 0) {
            // transition gradient map to next
            const nextGradientMapData = this._gradientMapStack[this._gradientMapStack.length - 1];
            this.showGradientColorMap(nextGradientMapData.id, duration);
          } else {
            // transition to none gradient map
            this.showGradientColorMap(this._gradientMapNoneId, duration);
          }
        } else {
          // remove silently when not top of stack
          this._gradientMapStack.splice(gradientMapDataIndex, 1);
        }
      }
    }
  }
Helper method to clear the gradient color map, optionally with a duration.
@param {Number} id
@param [duration=0.0]