Exemplo n.º 1
0
    def __load_file(self):
        """
        loading selected file and will launch the preliminary analysis
        Return:
            None
        """
        if self.fileName and not hasattr(self, 'da'):
            self.da = DataAnalysis.create_object(file_path=self.fileName)
            self.da.get_statistics()

            stats = self.da.stats

            self.grid_widget = QWidget()
            grid = QGridLayout()
            grid.setObjectName('grid_stats')
            self.fields = stats.columns
            self.qties = stats.index

            self.active_buttons = dict()

            for indf, field in enumerate(self.fields, 1):
                self.active_buttons[field] = False
                btn = LabelButton.create_label_button(label=field,
                                                      window=self,
                                                      connect_fns=[])

                grid.addWidget(btn, indf, 0)
            for indq, qty in enumerate(self.qties, 1):
                grid.addWidget(QLabel(qty), 0, indq)

            for indf, field in enumerate(self.fields):
                for indq, qty in enumerate(self.qties):
                    grid.addWidget(QLabel(str(stats.iloc[indq, indf])),
                                   1 + indf, 1 + indq)

            grid.setColumnStretch(indq + 1, 1)

            self.grid_widget.setLayout(grid)
            self.main_layout.addWidget(self.grid_widget)
            # self.main_layout.addLayout(grid, 1, 0, 1, 2)

            if not hasattr(self.hbox, 'btn_draw'):
                self.btn_draw = UserInterface._create_button(
                    text='Draw Chart',
                    icon_path='icons/draw2.png',
                    connect_fn=self.__draw_chart)
                self.hbox.addWidget(self.btn_draw)
            else:
                self.btn_draw.setVisible(True)

            if not hasattr(self.hbox, 'btn_unload'):
                self.btn_unload = UserInterface._create_button(
                    text='Unload data',
                    icon_path='icons/remove2.png',
                    connect_fn=self.__remove)
                self.hbox.addWidget(self.btn_unload)
            else:
                self.btn_unload.setVisible(True)

            self.hbox.addStretch()
            self.hbox.setDirection(QBoxLayout.LeftToRight)
            self.statusBar().showMessage(self.os_text +
                                         '\t\t\tData file loaded.')

        else:
            self.statusBar().showMessage(self.os_text +
                                         '\t\t\tNo file selected')

        self.update()