Changeset 3592:f57884d8bb40 in orange


Ignore:
Timestamp:
04/26/07 13:49:17 (7 years ago)
Author:
spetrovic <spetrovic@…>
Branch:
default
Convert:
1adb8cf4d66dfc31070a0d6e811f9f53457784e3
Message:

Added results tab and some small features

Location:
orange/OrangeWidgets/Visualize
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • orange/OrangeWidgets/Visualize/OWCorrAnalysis.py

    r3571 r3592  
    116116        self.zoomSelectToolbar = ZoomBrowseSelectToolbar(self, self.GeneralTab, self.graph, self.autoSendSelection) 
    117117        self.connect(self.zoomSelectToolbar.buttonSendSelections, SIGNAL("clicked()"), self.sendSelections) 
     118        self.connect(self.graph, SIGNAL('plotMousePressed(const QMouseEvent&)'), self.sendSelections) 
    118119         
    119120        self.apply = False 
     
    148149 
    149150        OWGUI.hSlider(self.SettingsTab, self, 'graph.maxPoints', box=' Maximum number of points ', minValue = 10, maxValue=40, step=1, callback = None) 
     151 
     152        self.resultsTab = QVGroupBox(self, "Results") 
     153        self.tabsMain.insertTab(self.resultsTab, "Results") 
     154        self.chosenDoc = [] 
     155        self.docs = self.graph.docs 
     156        OWGUI.listBox(self.resultsTab, self, "chosenDoc", "docs", box="Documents", callback = None) 
     157        self.chosenFeature = [] 
     158        self.features = self.graph.features 
     159        OWGUI.listBox(self.resultsTab, self, "chosenFeature", "features", box="Features", callback = None) 
     160         
    150161 
    151162         
     
    301312        indices = self.CA.PointsWithMostInertia(rowColumn = 0, axis = (int(self.attrX)-1, int(self.attrY)-1))[:numCor] 
    302313        cor = [cor[i] for i in indices] 
    303         tipsR = [self.tipsR[i] for i in indices] 
     314        tipsR = [self.tipsR[i] + 'R' for i in indices] 
    304315        if not self.graph.showRowLabels: tipsR = ['' for i in indices] 
    305         self.plotPoint(cor, 0, tipsR, "Row points", self.graph.showFilledSymbols)             
    306              
    307         cor = self.CA.getPrincipalColProfilesCoordinates((int(self.attrX)-1, int(self.attrY)-1))       
     316        self.plotPoint(cor, 0, tipsR, "Row points", self.graph.showFilledSymbols) 
     317             
     318        cor = self.CA.getPrincipalColProfilesCoordinates((int(self.attrX)-1, int(self.attrY)-1)) 
    308319        numCor = int(self.percCol) 
    309320        indices = self.CA.PointsWithMostInertia(rowColumn = 1, axis = (int(self.attrX)-1, int(self.attrY)-1))[:numCor] 
    310321        cor = [cor[i] for i in indices] 
    311         tipsC = [self.tipsC[i] for i in indices] 
     322        tipsC = [self.tipsC[i] + 'C' for i in indices] 
    312323        if not self.graph.showColumnLabels: tipsC = ['' for i in indices]         
    313324        self.plotPoint(cor, 1, tipsC, "Column points", self.graph.showFilledSymbols) 
     
    326337        for i in range(len(cor)): 
    327338            x = cor[i][0] 
    328             y = cor[i][1]            
    329           
     339            y = cor[i][1] 
    330340            self.graph.tips.addToolTip(x, y, tips[i])    
    331341 
    332     def sendSelections(self): 
    333         pass 
     342    def sendSelections(self, e): 
     343        self.docs = self.graph.docs 
     344        self.features = self.graph.features 
    334345         
    335346         
     
    435446    #owb.show() 
    436447    print 'Done with loading' 
    437     t1 = orngText.bagOfWords(t) 
    438     print 'Done with bagging' 
    439     t2 = orngText.FSS(t1, 'TF', 'MIN', 0.9) 
     448    t1 = orngText.extractLetterNGram(t, 3) 
     449    print 'Done with extracting' 
     450    t2 = orngText.FSS(t1, 'TF', 'MAX', 0.95) 
     451    #print t2[0] 
     452    #print len(t2.domain.getmetas()) 
    440453    print 'Done with feature selection' 
    441454    appl.setMainWidget(ow) 
    442     ow.dataset(t2) 
     455    t3 = orngText.DSS(t2, 'WF', 'MIN', 1) 
     456    print 'Done with document selection' 
     457    ow.dataset(t3) 
    443458    print 'Done' 
    444     ow.show()  
     459    ow.show() 
    445460##    dataset = orange.ExampleTable('/home/mkolar/Docs/Diplomski/repository/orange/doc/datasets/iris.tab')  
    446461 
  • orange/OrangeWidgets/Visualize/OWCorrAnalysisGraph.py

    r3571 r3592  
    3232        self.showColumnLabels = 1 
    3333        self.maxPoints = 10 
     34        self.docs = [] 
     35        self.features = [] 
    3436         
    3537##        self.tooltipKind = 1 
    3638         
    3739        self.markLines = [] 
     40        self.mytips = MyQToolTip(self) 
    3841         
    3942        self.connect(self, SIGNAL("plotMouseMoved(const QMouseEvent &)"), self.onMouseMoved) 
     
    106109##            for x, y, text in cor: 
    107110##                self.addMarker(text, x, y) 
    108              
    109             ## 
    110              
     111 
    111112            self.replot() 
    112  
    113             self.event(e)             
     113            self.event(e) 
    114114        elif self.state == BROWSE_CIRCLE: 
    115115            xFloat = self.invTransform(QwtPlot.xBottom, e.x()) 
     
    126126##            for x, y, text in cor: 
    127127##                self.addMarker(text, x, y) 
    128      
    129             # 
    130128            self.replot()    
    131              
    132129            self.event(e)  
    133130        else:    
     
    136133             
    137134    def onMousePressed(self, e):         
    138         if self.state == BROWSE_RECTANGLE or self.state == BROWSE_CIRCLE:    
    139             self.event(e)             
     135        if self.state == BROWSE_RECTANGLE: 
     136            xFloat = self.invTransform(QwtPlot.xBottom, e.x()) 
     137            yFloat = self.invTransform(QwtPlot.yLeft, e.y()) 
     138            all = [(self.tips.texts[i]) for (i,(x,y, cx, cy)) in enumerate(self.tips.positions) if abs(xFloat - x)  <= self.radius and abs(yFloat - y) <= self.radius] 
     139            self.docs = [tip[:-1] for tip in all if tip[-1] == 'R'] 
     140            self.features = [tip[:-1] for tip in all if tip[-1] == 'C'] 
     141            self.event(e) 
     142        elif self.state == BROWSE_CIRCLE: 
     143            self.event(e) 
    140144        else: 
    141145            OWGraph.onMousePressed(self, e) 
     
    216220#                points[i-1] = t             
    217221#            i = i + 1                 
    218                  
     222 
     223        points = [(i, (x, y, t[:-1])) for (i, (x, y, t)) in points[:self.maxPoints]] 
    219224         
    220225        for i, (x, y, text) in points: 
    221226            side = left 
    222227            if not text: continue 
    223             print right, left 
    224228            if x < posX: 
    225229                #pokusaj lijevo 
     
    352356        for x, y, text, al, x1, y1 in newMark: 
    353357            self.addMarker(text, x, y, alignment = al, color = QColor(255,0,0), size = self.labelSize) 
     358            #self.showTip(x, y, text) 
    354359            self.markLines.append(self.addCurve("", QColor("black"), QColor("black"), 1, QwtCurve.Lines, xData = [x, x1], yData = [y, y1] )) 
    355360 
    356              
    357361##    def checkPerc(self, x, textLen): 
    358362##        div = self.axisScale(QwtPlot.xBottom) 
Note: See TracChangeset for help on using the changeset viewer.