def zoom(self, n='<STR_LIT:all>', xfactor=<NUM_LIT>, yfactor=<NUM_LIT>):
if len(self._set_xdata)==<NUM_LIT:0> or len(self._set_ydata)==<NUM_LIT:0>:<EOL><INDENT>self._error("<STR_LIT>")<EOL>return<EOL><DEDENT>xdata, ydata, eydata = self.get_data()<EOL>if   _s.fun.is_a_number(n): n = [n]<EOL>elif isinstance(n,str):     n = list(range(len(xdata)))<EOL>for i in n:<EOL><INDENT>fig = self['<STR_LIT>']+i<EOL>try:<EOL><INDENT>xmin, xmax = _p.figure(fig).axes[<NUM_LIT:1>].get_xlim()<EOL>xc = <NUM_LIT:0.5>*(xmin+xmax)<EOL>xs = <NUM_LIT:0.5>*abs(xmax-xmin)<EOL>self['<STR_LIT>'][i] = xc - xfactor*xs<EOL>self['<STR_LIT>'][i] = xc + xfactor*xs<EOL>ymin, ymax = _p.figure(fig).axes[<NUM_LIT:1>].get_ylim()<EOL>yc = <NUM_LIT:0.5>*(ymin+ymax)<EOL>ys = <NUM_LIT:0.5>*abs(ymax-ymin)<EOL>self['<STR_LIT>'][i] = yc - yfactor*ys<EOL>self['<STR_LIT>'][i] = yc + yfactor*ys<EOL><DEDENT>except:<EOL><INDENT>self._error("<STR_LIT>"+str(fig)+"<STR_LIT>")<EOL><DEDENT><DEDENT>self.clear_results()<EOL>if self['<STR_LIT>']: self.plot()<EOL>return self<EOL>
This will scale the chosen data set's plot range by the
specified xfactor and yfactor, respectively, and set the trim limits
xmin, xmax, ymin, ymax accordingly

Parameters
----------
n='all'     
    Which data set to perform this action upon. 'all' means all data
    sets, or you can specify a list.
xfactor=2.0
    Factor by which to scale the x range.
yfactor=2.0
    Factor by which to scale the y range.