code: function(area, preventEvent){
      var options = this.options,
        xa = this.axes.x,
        ya = this.axes.y,
        vertScale = ya.scale,
        hozScale = xa.scale,
        selX = options.selection.mode.indexOf('x') != -1,
        selY = options.selection.mode.indexOf('y') != -1,
        s = this.selection.selection;
      
      this.selection.clearSelection();
  
      s.first.y  = boundY((selX && !selY) ? 0 : (ya.max - area.y1) * vertScale, this);
      s.second.y = boundY((selX && !selY) ? this.plotHeight - 1: (ya.max - area.y2) * vertScale, this);
      s.first.x  = boundX((selY && !selX) ? 0 : (area.x1 - xa.min) * hozScale, this);
      s.second.x = boundX((selY && !selX) ? this.plotWidth : (area.x2 - xa.min) * hozScale, this);
      
      this.selection.drawSelection();
      if (!preventEvent)
        this.selection.fireSelectEvent();
    }
docs: Allows the user the manually select an area.
  @param {Object} area - Object with coordinates to select.