Ignore:
Timestamp:
Nov 12, 2008 2:07:10 PM (14 years ago)
Author:
ajj
Message:

Handle plot removal, deal with rescaling on plot removal.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • sans/utils/bt5/bt5plot2/bt5plot2

    r442 r443  
    156156            model[path][4] = self.axis.plot(model[path][3][0],model[path][3][1], 'bo') 
    157157         
    158         self.axis.autoscale_view() 
    159         self.canvas.draw() 
     158        self.rescale_and_redraw() 
     159        #self.canvas.draw() 
    160160        return 
    161161 
     
    252252        for line in model[path][4]: 
    253253                self.axis.lines.remove(line) 
    254                  
     254         
     255         
     256         
     257        #self.canvas.draw()      
    255258        self.rescale_and_redraw() 
    256259        return 
     
    294297 
    295298        for line in self.axis.lines: 
    296              xdata.extend(line.get_xdata()) 
    297              ydata.extend(line.get_ydata()) 
    298  
    299         xmin = float(min(xdata)*0.95) 
    300         xmax = float(max(xdata)*1.05) 
    301         ymin = float(min(ydata)*0.95) 
    302         ymax = float(max(ydata)*1.05)    
    303  
     299                if self.axis.get_xscale() == 'log': 
     300                        xdata.extend([xval for xval in line.get_xdata() if xval > 0]) 
     301                else: 
     302                        xdata.extend(line.get_xdata()) 
     303                if self.axis.get_yscale() == 'log': 
     304                        ydata.extend([xval for xval in line.get_ydata() if xval > 0]) 
     305                else: 
     306                        ydata.extend(line.get_ydata()) 
     307       
     308        #set limits 
     309        xmin = float(min(xdata)) 
     310        xmax = float(max(xdata)) 
     311        ymin = float(min(ydata)) 
     312        ymax = float(max(ydata))         
     313 
     314        #adjust for size of markers (sort of) 
     315        xmin = xmin - 0.1*abs(xmin) 
     316        xmax = xmax + 0.1*abs(xmax) 
     317        ymin = ymin - 0.1*abs(ymin) 
     318        ymax = ymax + 0.1*abs(ymax) 
     319                 
    304320        self.axis.set_xlim(xmin,xmax) 
    305321        self.axis.set_ylim(ymin,ymax) 
    306322         
    307         self.axis.autoscale_view() 
     323        #self.axis.autoscale_view() 
    308324        self.canvas.draw() 
    309325 
Note: See TracChangeset for help on using the changeset viewer.