code: function(config) {
          config = config || {};
  
          var me = this,
              pos = config.position || 'left';
  
          pos = pos.charAt(0).toUpperCase() + pos.substring(1);
          //axisLabel(Top|Bottom|Right|Left)Style
          config.label = Ext.apply(config['axisLabel' + pos + 'Style'] || {}, config.label || {});
          config.axisTitleStyle = Ext.apply(config['axisTitle' + pos + 'Style'] || {}, config.labelTitle || {});
          Ext.apply(me, config);
          me.fields = Ext.Array.from(me.fields);
          this.callParent();
          me.labels = [];
          me.getId();
          me.labelGroup = me.chart.surface.getGroup(me.axisId + "-labels");
      }
docs: @cfg {String[]} fields
  The fields of model to bind to this axis.
  
  For example if you have a data set of lap times per car, each having the fields:
  `'carName'`, `'avgSpeed'`, `'maxSpeed'`. Then you might want to show the data on chart
  with `['carName']` on Name axis and `['avgSpeed', 'maxSpeed']` on Speed axis.
   
  Creates new Axis.
  @param {Object} config (optional) Config options.