Changeset 7953:85cbc3887194 in orange


Ignore:
Timestamp:
05/27/11 14:29:45 (3 years ago)
Author:
miha <miha.stajdohar@…>
Branch:
default
Convert:
f7648c43d1225a26459c1cde95965a4b0452dfb5
Message:

Improve Python speed and refactoring.

Location:
orange/OrangeWidgets/Prototypes
Files:
2 edited

Legend:

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

    r7909 r7953  
    2020 
    2121    def __init__(self, parent=None, signalManager = None): 
    22         OWDistanceFile.__init__(self, parent, signalManager, inputItems=0) 
     22        OWDistanceFile.__init__(self, parent, signalManager, name='Model File', inputItems=0) 
    2323        #self.inputs = [("Examples", ExampleTable, self.getExamples, Default)] 
    2424         
  • orange/OrangeWidgets/Prototypes/OWModelMap.py

    r7920 r7953  
    350350        self.predGraph.setAxisScale(QwtPlot.yLeft, -0.5, len(self.matrix.originalData.domain.classVar.values) - 0.5, 1) 
    351351         
    352         scores = [[float(ca) for ca in ex["CA by class"].value.split(", ")] for ex in self.matrix.items.getitems(vertices)] 
     352        scores = [[float(ca) for ca in ex["CA by class"].value.split(", ")] for ex in self.graph.items.getitems(vertices)] 
    353353        scores = [sum(score) / len(score) for score in zip(*scores)] 
    354354         
     
    374374            return 
    375375         
    376         attrList = [self.matrix.items[v]["attributes"].value.split(", ") for v in vertices] 
     376        attrList = [self.graph.items[v]["attributes"].value.split(", ") for v in vertices] 
    377377         
    378378        attrIntersection = set(attrList[0]) 
     
    408408         
    409409        uuids = set([ex["uuid"].value for ex in subsetData]) 
    410  
    411410        for v in self.vertices: 
    412             if v.uuid in uuids: 
    413                 v.highlight = 1 
    414             else: 
    415                 v.highlight = 0 
     411            v.highlight = 1 if v.uuid in uuids else 0 
    416412                 
    417413    def setMatrix(self, matrix): 
     
    432428            return 
    433429             
     430        for ex in matrix.items: 
     431            ex["attributes"] = ", ".join(sorted(ex["attributes"].value.split(", "))) 
     432             
    434433        OWNetworkHist.setMatrix(self, matrix) 
    435434         
    436         for i, ex in enumerate(matrix.items): 
    437             ex["attributes"] = ", ".join(sorted(ex["attributes"].value.split(", "))) 
    438             self.networkCanvas.vertices[i].uuid = ex["uuid"].value 
    439  
    440435    def setVertexSize(self): 
    441436        OWNetExplorer.setVertexSize(self) 
     
    445440    def setVertexStyle(self): 
    446441        for v in self.networkCanvas.vertices: 
    447             auc = self.matrix.items[v.index] 
     442            auc = self.graph.items[v.index] 
    448443            v.style = 1 #auc             
    449444         
     
    451446        self.warning() 
    452447         
    453         if self.graph is None or self.graph.items is None or self.matrix is None: 
     448        if self.graph is None or self.graph.items is None or self.graph_matrix is None: 
    454449            self.send("Model", None) 
    455450            self.send("Selected Models", None) 
    456451            return 
    457452         
    458         if len(self.graph.items) != self.matrix.dim: 
     453        if self.graph.nVertices != self.graph_matrix.dim: 
    459454            self.warning('Network items and matrix results not of equal length.') 
    460455            self.send("Model", None) 
     
    468463            # modelInfo - Python Dict; keys: method, classifier, probabilities, 
    469464            # results, XAnchors, YAnchors, attributes 
    470             modelInfo = self.matrix.results[selection[0]] 
     465            modelInfo = self.graph_matrix.results[selection[0]] 
    471466            uuid = modelInstance["uuid"].value 
    472467            #method, vizr_result, projection_points, classifier, attrs = self.matrix.results[uuid] 
     
    512507             
    513508    def sendSignals(self): 
    514         if self.graph != None: 
    515             self.setGraph(self.graph) 
    516             self.setVertexDistance(self.matrix) 
    517             # TODO clickedAttLstBox -> setLabelText(["attributes"] 
    518              
    519             self.setVertexSize() 
    520             self.setVertexStyle() 
    521             self.setVertexColor() 
    522              
    523             labels = self.matrix.originalData.domain.classVar.values.native() 
    524             self.predGraph.numberOfBars = len(labels) 
    525             self.predGraph.barSize = 200 / (self.predGraph.numberOfBars + 1) 
    526             self.predGraph.setYLlabels(labels) 
    527             #self.predGraph.setShowMainTitle(self.showMainTitle) 
    528             #self.predGraph.setYLaxisTitle(self.matrix.originalData.domain.classVar.name) 
    529             #self.predGraph.setShowYLaxisTitle(True) 
    530             self.predGraph.setAxisScale(QwtPlot.xBottom,  0.0, 1.0, 0.2) 
    531             self.predGraph.setAxisScale(QwtPlot.yLeft, -0.5, len(self.matrix.originalData.domain.classVar.values) - 0.5, 1) 
    532          
    533             self.predGraph.enableYRaxis(0) 
    534             self.predGraph.setYRaxisTitle("") 
    535             self.predGraph.setXaxisTitle("CA") 
    536             self.predGraph.setShowXaxisTitle(True) 
    537             self.predGraph.replot() 
     509        if self.graph is None or self.graph_matrix is None: 
     510            return 
     511         
     512        self.setGraph(self.graph) 
     513        self.setVertexDistance(self.graph_matrix) 
     514        # TODO clickedAttLstBox -> setLabelText(["attributes"] 
     515         
     516        for i, ex in enumerate(self.graph.items): 
     517            self.networkCanvas.vertices[i].uuid = ex["uuid"].value 
     518         
     519        self.setVertexSize() 
     520        self.setVertexStyle() 
     521        self.setVertexColor() 
     522         
     523        labels = self.matrix.originalData.domain.classVar.values.native() 
     524        self.predGraph.numberOfBars = len(labels) 
     525        self.predGraph.barSize = 200 / (self.predGraph.numberOfBars + 1) 
     526        self.predGraph.setYLlabels(labels) 
     527        #self.predGraph.setShowMainTitle(self.showMainTitle) 
     528        #self.predGraph.setYLaxisTitle(self.matrix.originalData.domain.classVar.name) 
     529        #self.predGraph.setShowYLaxisTitle(True) 
     530        self.predGraph.setAxisScale(QwtPlot.xBottom,  0.0, 1.0, 0.2) 
     531        self.predGraph.setAxisScale(QwtPlot.yLeft, -0.5, len(self.matrix.originalData.domain.classVar.values) - 0.5, 1) 
     532     
     533        self.predGraph.enableYRaxis(0) 
     534        self.predGraph.setYRaxisTitle("") 
     535        self.predGraph.setXaxisTitle("CA") 
     536        self.predGraph.setShowXaxisTitle(True) 
     537        self.predGraph.replot() 
    538538 
    539539if __name__=="__main__":     
Note: See TracChangeset for help on using the changeset viewer.