Changeset 8606:ad8293299822 in orange


Ignore:
Timestamp:
08/04/11 22:33:45 (3 years ago)
Author:
Noughmad <Noughmad@…>
Branch:
default
Convert:
fe7a7440a4e3f39bf22a7855ee635fef568fd383
Message:

Add a plot grid

Location:
orange/OrangeWidgets
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • orange/OrangeWidgets/Prototypes/OWScatterPlotQt.py

    r8549 r8606  
    157157        self.graph.discPalette = dlg.getDiscretePalette("discPalette") 
    158158        self.graph.setCanvasBackground(dlg.getColor("Canvas")) 
    159         # self.graph.gridCurve.setPen(QPen(dlg.getColor("Grid"))) 
     159        self.graph.gridCurve.setPen(QPen(dlg.getColor("Grid"))) 
    160160        self.graph.palette.grid_style.color = dlg.getColor("Grid") 
    161161 
  • orange/OrangeWidgets/plot/owaxis.py

    r8440 r8606  
    300300    def boundingRect(self): 
    301301        return QRectF() 
     302         
     303    def ticks(self): 
     304        return self._ticks 
  • orange/OrangeWidgets/plot/owplot.py

    r8602 r8606  
    160160        self.YLaxisTitle = None 
    161161        self.YRaxisTitle = None 
     162         
     163        self.grid_curve = PlotGrid(self) 
    162164                 
    163165        # Method aliases, because there are some methods with different names but same functions 
     
    232234        self.selection_behavior = self.AddSelection 
    233235        self.replot() 
    234          
    235236         
    236237    selectionCurveList = deprecated_attribute("selectionCurveList", "selection_items") 
     
    243244    mainTitle = deprecated_attribute("mainTitle", "main_title") 
    244245    showMainTitle = deprecated_attribute("showMainTitle", "show_main_title") 
     246    gridCurve = deprecated_attribute("gridCurve", "grid_curve") 
    245247     
    246248    def __setattr__(self, name, value): 
  • orange/OrangeWidgets/plot/owtools.py

    r8596 r8606  
    300300    def data_rect(self): 
    301301        return self.rect 
     302         
     303@deprecated_members({ 
     304        'enableX' : 'set_x_enabled', 
     305        'enableY' : 'set_y_enabled', 
     306        'xEnabled' : 'is_x_enabled', 
     307        'yEnabled' : 'is_y_enabled', 
     308        'setPen' : 'set_pen' 
     309    }) 
     310class PlotGrid(orangeplot.PlotItem): 
     311    def __init__(self, plot): 
     312        orangeplot.PlotItem.__init__(self) 
     313        self._x_enabled = True 
     314        self._y_enabled = True 
     315        self._path_item = QGraphicsPathItem(self) 
     316        self.attach(plot) 
     317         
     318    def set_x_enabled(self, b): 
     319        if b < 0: 
     320            b = not self._x_enabled 
     321        self._x_enabled = b 
     322         
     323    def enable_y(self, b): 
     324        if b < 0: 
     325            b = not self._y_enabled 
     326        self._y_enabled = b 
     327         
     328    def set_pen(self, pen): 
     329        self._pen = pen 
     330         
     331    def update_properties(self): 
     332        p = self.plot() 
     333        if p is None: 
     334            return 
     335        x_id, y_id = self.axes() 
     336        rect = p.data_rect_for_axes(x_id, y_id) 
     337        path = QPainterPath() 
     338        if self._x_enabled and x_id in p.axes: 
     339            for pos, label, size in p.axes[x_id].ticks(): 
     340                path.moveTo(pos, rect.bottom()) 
     341                path.lineTo(pos, rect.top()) 
     342        if self._y_enabled and y_id in p.axes: 
     343            for pos, label, size in p.axes[y_id].ticks(): 
     344                path.moveTo(rect.left(), pos) 
     345                path.lineTo(rect.right(), pos) 
     346        self._path_item.setPath(self.graph_transform().map(path)) 
     347         
     348     
Note: See TracChangeset for help on using the changeset viewer.