registerStrategy(chartKey, ChartClass) {
    try {
      if (this._strategies.has(chartKey))
        throw new Error(`The [${chartkey}] has been registered.Please change the name and re register.`);
      this._strategies.set(chartKey, new Strategy(ChartClass));
      return this;
    } catch (e) {
      console.error(e);
    }
  }
/**
   * register a chart with ccd3
   * @param {key} chartKey a unique key for each chart
   * @param {class} chartClass An ES6 compliant class 
   */
register a chart with ccd3
@param {key} chartKey a unique key for each chart
@param {class} chartClass An ES6 compliant class
register a chart with ccd3 @param { key } chartKey a unique key for each chart @param { class } chartClass An ES6 compliant class
registerStrategy(chartKey, ChartClass) {
    try {
      if (this._strategies.has(chartKey))
        throw new Error(`The [${chartkey}] has been registered.Please change the name and re register.`);
      this._strategies.set(chartKey, new Strategy(ChartClass));
      return this;
    } catch (e) {
      console.error(e);
    }
  }
registerStrategy ( chartKey , ChartClass ) { try { if ( this . _strategies . has ( chartKey ) ) throw new Error ( ` ${ chartkey } ` ) ; this . _strategies . set ( chartKey , new Strategy ( ChartClass ) ) ; return this ; } catch ( e ) { console . error ( e ) ; } }
register a chart with ccd3
 @param {key} chartKey a unique key for each chart
 @param {class} chartClass An ES6 compliant class
register a chart with ccd3 @param { key } chartKey a unique key for each chart @param { class } chartClass An ES6 compliant class