Changeset 1366:8d45633d4614 in orange-bioinformatics


Ignore:
Timestamp:
04/11/11 11:16:47 (3 years ago)
Author:
ales_erjavec <ales.erjavec@…>
Branch:
default
Convert:
a17a8d0861bbed8dc15390e0608cf25dc44ed9fe
Message:

Changed the order of Relevant attributes and Separate by boxes.
Output matrix in the same order as shown in the Groups box.
Show a warning when no selected Separate by key.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • widgets/prototypes/OWGenotypeDistances.py

    r1365 r1366  
    105105 
    106106def dist_eucl(l1, l2): 
    107     return euclidean_lists(l1, l2) 
     107    return euclidean_lists(l1, l2)     
    108108 
    109109class MyHeaderView(QHeaderView): 
     
    153153        self.outputs = [("Distances", Orange.core.SymMatrix)] 
    154154         
    155         self.distance_measure = 0 
     155        self.distance_measure = 1 
    156156        self.auto_commit = False 
    157157        self.changed_flag = False 
     
    163163        ######## 
    164164         
    165         self.info_box = OWGUI.widgetLabel(OWGUI.widgetBox(self.controlArea, "Info", 
     165        self.info_box = OWGUI.widgetLabel(OWGUI.widgetBox(self.controlArea, "Input", 
    166166                                                         addSpace=True), 
    167                                          "No data on input\n\n") 
     167                                         "No data on input\n") 
     168         
     169        box = OWGUI.widgetBox(self.controlArea, "Relevant attributes", 
     170                              addSpace=True) 
     171        self.relevant_view = QListView() 
     172        self.relevant_view.setSelectionMode (QListView.MultiSelection) 
     173        box.layout().addWidget(self.relevant_view) 
    168174         
    169175        box = OWGUI.widgetBox(self.controlArea, "Separate By", 
    170176                              addSpace=True) 
    171          
    172177        self.separate_view = QListView() 
    173178        self.separate_view.setSelectionMode(QListView.MultiSelection) 
    174179        box.layout().addWidget(self.separate_view) 
    175180         
    176         box = OWGUI.widgetBox(self.controlArea, "Relevant attributes", 
    177                               addSpace=True) 
    178          
    179         self.relevant_view = QListView() 
    180         self.relevant_view.setSelectionMode (QListView.MultiSelection) 
    181         box.layout().addWidget(self.relevant_view) 
    182181         
    183182        self.distance_view = OWGUI.comboBox(self.controlArea, self, "distance_measure", 
     
    234233        self.data = data 
    235234        self.error(0) 
     235        self.warning(0) 
    236236        if data and not self.get_suitable_keys(data): 
    237237            self.error(0, "Data has no suitable attribute labels.") 
     
    239239             
    240240        if data: 
    241             self.info_box.setText("Table with:\n {0} instances\nand\n {1} features".format(len(data), len(data.domain))) 
     241            self.info_box.setText("{0} genes\n{1} experiments".format(len(data), len(data.domain))) 
    242242            self.update_control() 
    243243            self.split_data() 
     
    246246            self.relevant_view.setModel(PyListModel([])) 
    247247            self.groups_scroll_area.setWidget(QWidget()) 
    248             self.info_box.setText("No data on input.\n\n") 
     248            self.info_box.setText("No data on input.\n") 
    249249             
    250250        self.commit_if() 
     
    332332        relevant_keys = self.selected_relevant_keys() 
    333333         
     334        self.warning(0) 
    334335        if not separate_keys: 
    335             return 
     336            self.warning(0, "No separate by attribute selected.") 
    336337        partitions = separate_by(self.data, separate_keys, consider=relevant_keys).items() 
    337338#        print partitions 
    338339         
     340        partitions = sorted(partitions) 
    339341        split_data = [] 
    340342         
    341343        # Collect relevant key value pairs for all columns 
    342344        relevant_items = {} 
    343         for keys, indices in sorted(partitions): 
     345        for keys, indices in partitions: 
    344346            for i, ind in enumerate(indices): 
    345347                if ind is not None: 
Note: See TracChangeset for help on using the changeset viewer.