Exemple #1
0
    def test_enableToolBar(self, qtbot):
        widget = DataTableWidget()
        qtbot.addWidget(widget)
        widget.show()

        assert widget.view().model() is None

        buttons = widget.findChildren(QtGui.QToolButton)

        exclude_button = None
        for btn in buttons:
            if btn.isEnabled:
                qtbot.mouseClick(btn, QtCore.Qt.LeftButton)
                exclude_button = btn
                assert btn.isChecked()
                break

        for button in buttons:
            assert button.isEnabled()

        qtbot.mouseClick(btn, QtCore.Qt.LeftButton)

        for button in buttons:
            if button == exclude_button:
                continue
            assert not button.isEnabled()
            assert not button.isChecked()
Exemple #2
0
    def setupUi(self, MainWindow):
        MainWindow.setObjectName("MainWindow")
        MainWindow.resize(800, 600)
        self.centralwidget = QtWidgets.QWidget(MainWindow)
        self.centralwidget.setObjectName("centralwidget")
        self.pandastablewidget = DataTableWidget(self.centralwidget)
        self.pandastablewidget.setGeometry(QtCore.QRect(10, 60, 591, 451))
        self.pandastablewidget.setObjectName("pandastablewidget")
        self.pushButton = QtWidgets.QPushButton(self.centralwidget)
        self.pushButton.setGeometry(QtCore.QRect(630, 90, 93, 28))
        self.pushButton.setObjectName("pushButton")
        self.pushButton_2 = QtWidgets.QPushButton(self.centralwidget)
        self.pushButton_2.setGeometry(QtCore.QRect(640, 320, 93, 28))
        self.pushButton_2.setObjectName("pushButton_2")
        MainWindow.setCentralWidget(self.centralwidget)
        self.menubar = QtWidgets.QMenuBar(MainWindow)
        self.menubar.setGeometry(QtCore.QRect(0, 0, 800, 26))
        self.menubar.setObjectName("menubar")
        MainWindow.setMenuBar(self.menubar)
        self.statusbar = QtWidgets.QStatusBar(MainWindow)
        self.statusbar.setObjectName("statusbar")
        MainWindow.setStatusBar(self.statusbar)

        self.retranslateUi(MainWindow)
        QtCore.QMetaObject.connectSlotsByName(MainWindow)
Exemple #3
0
    def test_removeColumns(self, qtbot, dataModel2):
        widget = DataTableWidget()
        qtbot.addWidget(widget)
        widget.show()

        widget.setViewModel(dataModel2)

        df = dataModel2.dataFrame().copy()

        buttons = widget.findChildren(QtGui.QToolButton)
        for btn in buttons:
            if btn.isEnabled:
                qtbot.mouseClick(btn, QtCore.Qt.LeftButton)
                break

        for btn in buttons:
            if btn.objectName() == 'removecolumnbutton':
                qtbot.mouseClick(btn, QtCore.Qt.LeftButton)
                dlg = widget.findChildren(QtGui.QDialog)[-1]

                listview = dlg.findChildren(QtGui.QListView)[-1]

                listview.selectAll()

                dlg_buttons = dlg.findChildren(QtGui.QPushButton)

                for b in dlg_buttons:
                    if b.text() == 'OK':
                        qtbot.mouseClick(b, QtCore.Qt.LeftButton)
                        break

        assert widget.view().model().columnCount() == 0
Exemple #4
0
    def test_click_each_button(self, qtbot, dataModel):
        widget = DataTableWidget()
        qtbot.addWidget(widget)
        widget.show()

        widget.setViewModel(dataModel)

        buttons = widget.findChildren(QtGui.QToolButton)
        for btn in buttons:
            if btn.isEnabled:
                qtbot.mouseClick(btn, QtCore.Qt.LeftButton)
                break

        for btn in buttons:
            if btn.objectName() == 'editbutton':
                continue

            if btn.objectName() in ['addcolumnbutton', 'removecolumnbutton']:
                qtbot.mouseClick(btn, QtCore.Qt.LeftButton)
                dlg = widget.findChildren(QtGui.QDialog)[-1]

                dlg_buttons = dlg.findChildren(QtGui.QPushButton)

                for b in dlg_buttons:
                    if b.text() == 'Cancel':
                        qtbot.mouseClick(b, QtCore.Qt.LeftButton)
                        break
            else:
                qtbot.mouseClick(btn, QtCore.Qt.LeftButton)
Exemple #5
0
 def __init__(self, model: DataFrameModel, df_manager, **kwargs):
     QtGui.QMainWindow.__init__(self, parent=kwargs.pop('parent', None))
     self.df_manager = df_manager
     self._df_model = None
     self._df_model_transposed = None
     self._view_transposed = False
     self._widget = DataTableWidget()
     self._widget.setModel(model)
     kwargs['parent'] = self
     self.setupUi(self)
     self.dialog_fields_edit = FieldsEditDialog(model, parent=self)
     self.dialog_export = DataFrameModelExportDialog(
         df_manager,
         filename=model.filePath,
         allow_multi_source=False,
         parent=self)
     self.dialog_split = SplitFileDialog(model, parent=self)
     self.dialog_analyze = FileAnalyzerDialog(model, parent=self)
     self.dialog_normalize = ColumnNormalizerDialog(model, parent=self)
     self.dialog_merge_purge = kwargs.pop(
         'merge_purge_dialog',
         MergePurgeDialog(
             df_manager,
             source_model=model,
         ))
     self.connect_actions()
     self.connect_icons()
 def show_data(self):
     """
     展示读取进来的数据
     """
     self.widget = DataTableWidget(self.ui)
     model = DataFrameModel()
     model.setDataFrame(self.DataHelper.data)
     self.widget.setViewModel(model)
     self.widget.move(30, 200)
     self.widget.resize(350, 350)
     self.widget.show()
Exemple #7
0
    def test_addColumn(self, qtbot, dataModel):
        widget = DataTableWidget()
        qtbot.addWidget(widget)
        widget.show()

        widget.setViewModel(dataModel)

        buttons = widget.findChildren(QtGui.QToolButton)
        for btn in buttons:
            if btn.isEnabled:
                qtbot.mouseClick(btn, QtCore.Qt.LeftButton)
                break

        columns = []
        addButton = None
        for btn in buttons:
            if btn.objectName == 'addcolumnbutton':
                addbutton = btn
                qtbot.mouseClick(btn, QtCore.Qt.LeftButton)
                dlg = widget.findChildren(QtGui.QDialog)[-1]
                dlg_buttons = dlg.findChildren(QtGui.QPushButton)
                comboBox = dlg.findChildren(QtGui.QComboBox)[-1]

                for i in range(comboBox.count()):
                    columns.append(comboBox.itemText(i))

                for b in dlg_buttons:
                    if b.text() == 'Cancel':
                        qtbot.mouseClick(b, QtCore.Qt.LeftButton)
                        break
                break

        columnCountBeforeInsert = widget.view().model().columnCount()
        for index, column in enumerate(columns):
            qtbot.mouseClick(addbutton, QtCore.Qt.LeftButton)
            dlg = widget.findChildren(QtGui.QDialog)[-1]

            textedits = dlg.findChildren(QtGui.QLineEdit)
            qtbot.keyClicks(textedits[0], column)

            comboBox = dlg.findChildren(QtGui.QComboBox)[-1]
            comboBox.setCurrentIndex(index)

            dlg_buttons = dlg.findChildren(QtGui.QPushButton)

            for b in dlg_buttons:
                if b.text() == 'OK':
                    qtbot.mouseClick(b, QtCore.Qt.LeftButton)
                    break

            assert widget.view().model().columnCount(
            ) == columnCountBeforeInsert + 1 + index
Exemple #8
0
    def __init__(self, model: DataFrameModel,
                 df_manager: DataFrameModelManager, **kwargs):
        QtGui.QMainWindow.__init__(self, parent=kwargs.pop('parent', None))
        self.df_manager = df_manager
        self._widget = DataTableWidget()
        self._widget.setModel(model)

        kwargs['parent'] = self
        self.icons = Icons()
        self.setupUi(self)
        self.dialog_rename = None
        self.dialog_fields_edit = None
        self.connect_actions()
        self.connect_icons()
Exemple #9
0
    def setupUi(self, offer_Form):
        offer_Form.setObjectName("offer_Form")
        offer_Form.resize(653, 500)
        self.pushButton = QtWidgets.QPushButton(offer_Form)
        self.pushButton.setGeometry(QtCore.QRect(680, 60, 75, 23))
        self.pushButton.setObjectName("pushButton")
        self.pushButton_2 = QtWidgets.QPushButton(offer_Form)
        self.pushButton_2.setGeometry(QtCore.QRect(680, 170, 75, 23))
        self.pushButton_2.setObjectName("pushButton_2")
        self.offerwidget = DataTableWidget(offer_Form)
        self.offerwidget.setGeometry(QtCore.QRect(50, 30, 491, 391))
        self.offerwidget.setObjectName("offerwidget")

        self.retranslateUi(offer_Form)
        QtCore.QMetaObject.connectSlotsByName(offer_Form)
Exemple #10
0
    def test_init(self, qtbot):
        widget = DataTableWidget()
        qtbot.addWidget(widget)
        widget.show()

        assert widget.view().model() is None

        buttons = widget.findChildren(QtGui.QToolButton)

        enabled_counter = 0
        for btn in buttons:
            assert not btn.isChecked()
            if btn.isEnabled():
                enabled_counter += 1

        assert enabled_counter == 1
Exemple #11
0
    def setupUi(self, MainWindow):
        MainWindow.setObjectName("MainWindow")
        MainWindow.resize(800, 600)
        self.centralWidget = QtWidgets.QWidget(MainWindow)
        self.centralWidget.setObjectName("centralWidget")
        self.pushButton = QtWidgets.QPushButton(self.centralWidget)
        self.pushButton.setGeometry(QtCore.QRect(680, 60, 75, 23))
        self.pushButton.setObjectName("pushButton")
        self.pushButton_2 = QtWidgets.QPushButton(self.centralWidget)
        self.pushButton_2.setGeometry(QtCore.QRect(680, 170, 75, 23))
        self.pushButton_2.setObjectName("pushButton_2")
        self.pandastablewidget = DataTableWidget(self.centralWidget)
        self.pandastablewidget.setGeometry(QtCore.QRect(10, 30, 591, 331))
        self.pandastablewidget.setStyleSheet("")
        self.pandastablewidget.setObjectName("pandastablewidget")
        MainWindow.setCentralWidget(self.centralWidget)

        self.retranslateUi(MainWindow)
        QtCore.QMetaObject.connectSlotsByName(MainWindow)
Exemple #12
0
    def test_setModel(self, qtbot, dataModel):
        widget = DataTableWidget()
        qtbot.addWidget(widget)
        widget.show()

        widget.setViewModel(dataModel)

        assert widget.view().model() is not None
        assert widget.view().model() == dataModel

        buttons = widget.findChildren(QtGui.QToolButton)
        for btn in buttons:
            if btn.isEnabled:
                qtbot.mouseClick(btn, QtCore.Qt.LeftButton)
                assert widget.view().model().editable

                qtbot.mouseClick(btn, QtCore.Qt.LeftButton)
                assert not widget.view().model().editable

                break
Exemple #13
0
    def setup_ui(self):
        self.setWindowTitle("查詢結果")
        self.setFont(PyQt5.QtGui.QFont("Times New Roman", 11))

        self.buttonCopy = QPushButton("複製查詢結果 (Ctrl+C)")
        self.buttonCopy.clicked.connect(self.copy)
        self.labelInfo = QLabel("")
        self.shortcut = QShortcut(PyQt5.QtGui.QKeySequence("Ctrl+C"), self)
        self.shortcut.activated.connect(self.copy)

        self.formLayout = QFormLayout()
        self.formLayout.addRow(self.buttonCopy, self.labelInfo)

        self.widget = DataTableWidget()
        self.widget.setButtonsVisible(False)
        self.widget.setMinimumSize(600, 600)

        self.vbox = QVBoxLayout()
        self.vbox.addLayout(self.formLayout)
        self.vbox.addWidget(self.widget)
        self.setLayout(self.vbox)
Exemple #14
0
    def setupUi(self, Mine5):
        Mine5.setObjectName("Mine5")
        Mine5.resize(1259, 879)
        Mine5.setStyleSheet("border-image: url(:/M11.jpg);")
        Mine5.setWindowFlags(Qt.FramelessWindowHint)
        self.form = Mine5
        self.centralwidget = QtWidgets.QWidget(Mine5)
        self.centralwidget.setObjectName("centralwidget")
        self.pushButton = QtWidgets.QPushButton(self.centralwidget)
        self.pushButton.setGeometry(QtCore.QRect(20, -10, 861, 101))
        self.pushButton.setStyleSheet("border-image: url(:/M16.jpg);\n"
"font: 14pt \"华文新魏\";")
        self.pushButton.setObjectName("pushButton")
        self.label_2 = QtWidgets.QLabel(self.centralwidget)
        self.label_2.setGeometry(QtCore.QRect(890, 0, 361, 81))
        self.label_2.setStyleSheet("\n"
"border-image: url(:/M10.jpg);")
        self.label_2.setObjectName("label_2")
        self.pandastablewidget = DataTableWidget(self.centralwidget)
        self.pandastablewidget.setGeometry(QtCore.QRect(-10, 90, 1251, 741))
        self.pandastablewidget.setStyleSheet("border-image: url(:/M8.png);")
        self.pandastablewidget.setObjectName("pandastablewidget")
        self.model = DataFrameModel()
        self.pandastablewidget.setViewModel(self.model)
        self.model.setDataFrame(db)
        Mine5.setCentralWidget(self.centralwidget)
        self.menubar = QtWidgets.QMenuBar(Mine5)
        self.menubar.setGeometry(QtCore.QRect(0, 0, 1259, 26))
        self.menubar.setObjectName("menubar")
        Mine5.setMenuBar(self.menubar)
        self.statusbar = QtWidgets.QStatusBar(Mine5)
        self.statusbar.setObjectName("statusbar")
        Mine5.setStatusBar(self.statusbar)

        self.retranslateUi(Mine5)
        self.pushButton.clicked.connect(self.click1)
        QtCore.QMetaObject.connectSlotsByName(Mine5)
Exemple #15
0
    def setupUi(self, Form):
        Form.setObjectName("Form")
        Form.resize(903, 678)
        self.layoutWidget = QtWidgets.QWidget(Form)
        self.layoutWidget.setGeometry(QtCore.QRect(20, 40, 761, 541))
        self.layoutWidget.setObjectName("layoutWidget")
        self.gridLayout = QtWidgets.QGridLayout(self.layoutWidget)
        self.gridLayout.setContentsMargins(0, 0, 0, 0)
        self.gridLayout.setObjectName("gridLayout")
        self.quit_btn_7 = QtWidgets.QPushButton(self.layoutWidget)
        self.quit_btn_7.setObjectName("quit_btn_7")
        self.gridLayout.addWidget(self.quit_btn_7, 0, 1, 1, 1)
        self.quit_btn = QtWidgets.QPushButton(self.layoutWidget)
        self.quit_btn.setObjectName("quit_btn")
        self.gridLayout.addWidget(self.quit_btn, 0, 2, 1, 1)
        self.widget_2 = DataTableWidget(self.layoutWidget)
        self.widget_2.setObjectName("widget_2")
        self.gridLayout.addWidget(self.widget_2, 2, 0, 2, 3)
        self.quit_btn_5 = QtWidgets.QPushButton(self.layoutWidget)
        self.quit_btn_5.setObjectName("quit_btn_5")
        self.gridLayout.addWidget(self.quit_btn_5, 0, 0, 1, 1)

        self.retranslateUi(Form)
        QtCore.QMetaObject.connectSlotsByName(Form)
Exemple #16
0
    def setupUi(self, MainWindow):
        MainWindow.setObjectName("MainWindow")
        MainWindow.resize(724, 402)
        MainWindow.setMinimumSize(QtCore.QSize(724, 402))
        MainWindow.setMaximumSize(QtCore.QSize(724, 402))
        self.centralwidget = QtWidgets.QWidget(MainWindow)
        self.centralwidget.setObjectName("centralwidget")
        self.pandastablewidget = DataTableWidget(self.centralwidget)
        self.pandastablewidget.setGeometry(QtCore.QRect(0, 110, 363, 251))
        self.pandastablewidget.setMinimumSize(QtCore.QSize(363, 251))
        self.pandastablewidget.setMaximumSize(QtCore.QSize(363, 251))
        self.pandastablewidget.setObjectName("pandastablewidget")
        self.pushButton_queding1 = QtWidgets.QPushButton(
            self.pandastablewidget)
        self.pushButton_queding1.setGeometry(QtCore.QRect(200, 10, 56, 21))
        self.pushButton_queding1.setObjectName("pushButton_queding1")
        self.line = QtWidgets.QFrame(self.centralwidget)
        self.line.setGeometry(QtCore.QRect(0, 100, 371, 16))
        self.line.setFrameShape(QtWidgets.QFrame.HLine)
        self.line.setFrameShadow(QtWidgets.QFrame.Sunken)
        self.line.setObjectName("line")
        self.line_2 = QtWidgets.QFrame(self.centralwidget)
        self.line_2.setGeometry(QtCore.QRect(360, 0, 20, 391))
        self.line_2.setFrameShape(QtWidgets.QFrame.VLine)
        self.line_2.setFrameShadow(QtWidgets.QFrame.Sunken)
        self.line_2.setObjectName("line_2")
        self.layoutWidget = QtWidgets.QWidget(self.centralwidget)
        self.layoutWidget.setGeometry(QtCore.QRect(0, 0, 247, 78))
        self.layoutWidget.setObjectName("layoutWidget")
        self.verticalLayout_2 = QtWidgets.QVBoxLayout(self.layoutWidget)
        self.verticalLayout_2.setContentsMargins(0, 0, 0, 0)
        self.verticalLayout_2.setObjectName("verticalLayout_2")
        self.verticalLayout = QtWidgets.QVBoxLayout()
        self.verticalLayout.setObjectName("verticalLayout")
        self.horizontalLayout = QtWidgets.QHBoxLayout()
        self.horizontalLayout.setObjectName("horizontalLayout")
        self.pushButton_logdatabase = QtWidgets.QPushButton(self.layoutWidget)
        self.pushButton_logdatabase.setObjectName("pushButton_logdatabase")
        self.horizontalLayout.addWidget(self.pushButton_logdatabase)
        self.pushButton_opendatabase = QtWidgets.QPushButton(self.layoutWidget)
        self.pushButton_opendatabase.setObjectName("pushButton_opendatabase")
        self.horizontalLayout.addWidget(self.pushButton_opendatabase)
        self.pushButton_openfile = QtWidgets.QPushButton(self.layoutWidget)
        self.pushButton_openfile.setObjectName("pushButton_openfile")
        self.horizontalLayout.addWidget(self.pushButton_openfile)
        self.pushButton_sqllanguage = QtWidgets.QPushButton(self.layoutWidget)
        self.pushButton_sqllanguage.setObjectName("pushButton_sqllanguage")
        self.horizontalLayout.addWidget(self.pushButton_sqllanguage)
        self.verticalLayout.addLayout(self.horizontalLayout)
        self.horizontalLayout_2 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_2.setObjectName("horizontalLayout_2")
        self.pushButton_save = QtWidgets.QPushButton(self.layoutWidget)
        self.pushButton_save.setObjectName("pushButton_save")
        self.horizontalLayout_2.addWidget(self.pushButton_save)
        self.pushButton_datareturn = QtWidgets.QPushButton(self.layoutWidget)
        self.pushButton_datareturn.setObjectName("pushButton_datareturn")
        self.horizontalLayout_2.addWidget(self.pushButton_datareturn)
        self.pushButton_cleardata = QtWidgets.QPushButton(self.layoutWidget)
        self.pushButton_cleardata.setObjectName("pushButton_cleardata")
        self.horizontalLayout_2.addWidget(self.pushButton_cleardata)
        self.pushButton_view = QtWidgets.QPushButton(self.layoutWidget)
        self.pushButton_view.setObjectName("pushButton_view")
        self.horizontalLayout_2.addWidget(self.pushButton_view)
        self.verticalLayout.addLayout(self.horizontalLayout_2)
        self.verticalLayout_2.addLayout(self.verticalLayout)
        self.label = QtWidgets.QLabel(self.layoutWidget)
        self.label.setObjectName("label")
        self.verticalLayout_2.addWidget(self.label)
        self.horizontalLayout_3 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_3.setObjectName("horizontalLayout_3")
        self.radioButton_Minmax = QtWidgets.QRadioButton(self.layoutWidget)
        self.radioButton_Minmax.setCheckable(True)
        self.radioButton_Minmax.setChecked(False)
        self.radioButton_Minmax.setObjectName("radioButton_Minmax")
        self.horizontalLayout_3.addWidget(self.radioButton_Minmax)
        self.radioButton_Zscore = QtWidgets.QRadioButton(self.layoutWidget)
        self.radioButton_Zscore.setObjectName("radioButton_Zscore")
        self.horizontalLayout_3.addWidget(self.radioButton_Zscore)
        self.radioButton_xiaoshudingbiao = QtWidgets.QRadioButton(
            self.layoutWidget)
        self.radioButton_xiaoshudingbiao.setObjectName(
            "radioButton_xiaoshudingbiao")
        self.horizontalLayout_3.addWidget(self.radioButton_xiaoshudingbiao)
        self.verticalLayout_2.addLayout(self.horizontalLayout_3)
        self.comboBox_attributes = QtWidgets.QComboBox(self.centralwidget)
        self.comboBox_attributes.setGeometry(QtCore.QRect(420, 0, 60, 19))
        self.comboBox_attributes.setObjectName("comboBox_attributes")
        self.label_2 = QtWidgets.QLabel(self.centralwidget)
        self.label_2.setGeometry(QtCore.QRect(370, 0, 61, 16))
        font = QtGui.QFont()
        font.setFamily("Bahnschrift Light")
        font.setPointSize(11)
        self.label_2.setFont(font)
        self.label_2.setObjectName("label_2")
        self.label_comboboxattributes = QtWidgets.QLabel(self.centralwidget)
        self.label_comboboxattributes.setGeometry(QtCore.QRect(
            490, 0, 201, 16))
        font = QtGui.QFont()
        font.setFamily("Arial")
        font.setPointSize(10)
        self.label_comboboxattributes.setFont(font)
        self.label_comboboxattributes.setObjectName("label_comboboxattributes")
        self.qtpandas_attributewidget = DataTableWidget(self.centralwidget)
        self.qtpandas_attributewidget.setGeometry(
            QtCore.QRect(410, 20, 270, 133))
        self.qtpandas_attributewidget.setMinimumSize(QtCore.QSize(270, 133))
        self.qtpandas_attributewidget.setMaximumSize(QtCore.QSize(270, 133))
        self.qtpandas_attributewidget.setObjectName("qtpandas_attributewidget")
        self.gridLayoutWidget = QtWidgets.QWidget(self.centralwidget)
        self.gridLayoutWidget.setGeometry(QtCore.QRect(370, 160, 351, 201))
        self.gridLayoutWidget.setObjectName("gridLayoutWidget")
        self.gridLayout_pciture = QtWidgets.QGridLayout(self.gridLayoutWidget)
        self.gridLayout_pciture.setContentsMargins(0, 0, 0, 0)
        self.gridLayout_pciture.setObjectName("gridLayout_pciture")
        MainWindow.setCentralWidget(self.centralwidget)
        self.menubar = QtWidgets.QMenuBar(MainWindow)
        self.menubar.setGeometry(QtCore.QRect(0, 0, 724, 18))
        self.menubar.setObjectName("menubar")
        self.menuPreprocess = QtWidgets.QMenu(self.menubar)
        self.menuPreprocess.setObjectName("menuPreprocess")
        self.menuClassify = QtWidgets.QMenu(self.menubar)
        self.menuClassify.setObjectName("menuClassify")
        self.menuCluster = QtWidgets.QMenu(self.menubar)
        self.menuCluster.setObjectName("menuCluster")
        MainWindow.setMenuBar(self.menubar)
        self.statusbar = QtWidgets.QStatusBar(MainWindow)
        self.statusbar.setObjectName("statusbar")
        MainWindow.setStatusBar(self.statusbar)
        self.menubar.addAction(self.menuPreprocess.menuAction())
        self.menubar.addAction(self.menuClassify.menuAction())
        self.menubar.addAction(self.menuCluster.menuAction())

        self.retranslateUi(MainWindow)
        QtCore.QMetaObject.connectSlotsByName(MainWindow)
Exemple #17
0
    def setupUi(self, Query_Form):
        Query_Form.setObjectName("Query_Form")
        Query_Form.resize(844, 678)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Minimum,
                                           QtWidgets.QSizePolicy.Minimum)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            Query_Form.sizePolicy().hasHeightForWidth())
        Query_Form.setSizePolicy(sizePolicy)
        self.verticalLayout = QtWidgets.QVBoxLayout(Query_Form)
        self.verticalLayout.setObjectName("verticalLayout")
        self.horizontalLayout_2 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_2.setObjectName("horizontalLayout_2")
        self.gridLayout = QtWidgets.QGridLayout()
        self.gridLayout.setSizeConstraint(QtWidgets.QLayout.SetFixedSize)
        self.gridLayout.setHorizontalSpacing(0)
        self.gridLayout.setObjectName("gridLayout")
        self.comboBox = QtWidgets.QComboBox(Query_Form)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed,
                                           QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.comboBox.sizePolicy().hasHeightForWidth())
        self.comboBox.setSizePolicy(sizePolicy)
        self.comboBox.setObjectName("comboBox")
        self.gridLayout.addWidget(self.comboBox, 0, 0, 1, 1)
        self.comboBox_3 = QtWidgets.QComboBox(Query_Form)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed,
                                           QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.comboBox_3.sizePolicy().hasHeightForWidth())
        self.comboBox_3.setSizePolicy(sizePolicy)
        self.comboBox_3.setObjectName("comboBox_3")
        self.gridLayout.addWidget(self.comboBox_3, 0, 1, 1, 1)
        self.comboBox_4 = QtWidgets.QComboBox(Query_Form)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed,
                                           QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.comboBox_4.sizePolicy().hasHeightForWidth())
        self.comboBox_4.setSizePolicy(sizePolicy)
        self.comboBox_4.setObjectName("comboBox_4")
        self.gridLayout.addWidget(self.comboBox_4, 0, 2, 1, 1)
        self.comboBox_5 = QtWidgets.QComboBox(Query_Form)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed,
                                           QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.comboBox_5.sizePolicy().hasHeightForWidth())
        self.comboBox_5.setSizePolicy(sizePolicy)
        self.comboBox_5.setObjectName("comboBox_5")
        self.gridLayout.addWidget(self.comboBox_5, 0, 3, 1, 1)
        self.comboBox_2 = QtWidgets.QComboBox(Query_Form)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed,
                                           QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.comboBox_2.sizePolicy().hasHeightForWidth())
        self.comboBox_2.setSizePolicy(sizePolicy)
        self.comboBox_2.setObjectName("comboBox_2")
        self.gridLayout.addWidget(self.comboBox_2, 1, 0, 1, 1)
        self.lineEdit = QtWidgets.QLineEdit(Query_Form)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed,
                                           QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.lineEdit.sizePolicy().hasHeightForWidth())
        self.lineEdit.setSizePolicy(sizePolicy)
        self.lineEdit.setMinimumSize(QtCore.QSize(90, 22))
        self.lineEdit.setMaximumSize(QtCore.QSize(90, 22))
        self.lineEdit.setObjectName("lineEdit")
        self.gridLayout.addWidget(self.lineEdit, 1, 1, 1, 1)
        self.lineEdit_2 = QtWidgets.QLineEdit(Query_Form)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed,
                                           QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.lineEdit_2.sizePolicy().hasHeightForWidth())
        self.lineEdit_2.setSizePolicy(sizePolicy)
        self.lineEdit_2.setMinimumSize(QtCore.QSize(90, 22))
        self.lineEdit_2.setMaximumSize(QtCore.QSize(90, 22))
        self.lineEdit_2.setObjectName("lineEdit_2")
        self.gridLayout.addWidget(self.lineEdit_2, 1, 2, 1, 1)
        self.comboBox_6 = QtWidgets.QComboBox(Query_Form)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed,
                                           QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.comboBox_6.sizePolicy().hasHeightForWidth())
        self.comboBox_6.setSizePolicy(sizePolicy)
        self.comboBox_6.setObjectName("comboBox_6")
        self.gridLayout.addWidget(self.comboBox_6, 1, 3, 1, 1)
        self.horizontalLayout_2.addLayout(self.gridLayout)
        spacerItem = QtWidgets.QSpacerItem(158, 20,
                                           QtWidgets.QSizePolicy.Fixed,
                                           QtWidgets.QSizePolicy.Minimum)
        self.horizontalLayout_2.addItem(spacerItem)
        self.horizontalLayout = QtWidgets.QHBoxLayout()
        self.horizontalLayout.setSizeConstraint(QtWidgets.QLayout.SetFixedSize)
        self.horizontalLayout.setObjectName("horizontalLayout")
        self.PB_query = QtWidgets.QPushButton(Query_Form)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed,
                                           QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.PB_query.sizePolicy().hasHeightForWidth())
        self.PB_query.setSizePolicy(sizePolicy)
        self.PB_query.setMinimumSize(QtCore.QSize(80, 24))
        self.PB_query.setMaximumSize(QtCore.QSize(80, 24))
        self.PB_query.setObjectName("PB_query")
        self.horizontalLayout.addWidget(self.PB_query)
        self.PB_edit = QtWidgets.QPushButton(Query_Form)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed,
                                           QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.PB_edit.sizePolicy().hasHeightForWidth())
        self.PB_edit.setSizePolicy(sizePolicy)
        self.PB_edit.setMinimumSize(QtCore.QSize(80, 24))
        self.PB_edit.setMaximumSize(QtCore.QSize(80, 24))
        self.PB_edit.setObjectName("PB_edit")
        self.horizontalLayout.addWidget(self.PB_edit)
        self.PB_export = QtWidgets.QPushButton(Query_Form)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed,
                                           QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.PB_export.sizePolicy().hasHeightForWidth())
        self.PB_export.setSizePolicy(sizePolicy)
        self.PB_export.setMinimumSize(QtCore.QSize(80, 24))
        self.PB_export.setMaximumSize(QtCore.QSize(80, 24))
        self.PB_export.setObjectName("PB_export")
        self.horizontalLayout.addWidget(self.PB_export)
        self.horizontalLayout_2.addLayout(self.horizontalLayout)
        self.verticalLayout.addLayout(self.horizontalLayout_2)
        self.pandastablewidget = DataTableWidget(Query_Form)
        self.pandastablewidget.setStyleSheet("")
        self.pandastablewidget.setObjectName("pandastablewidget")
        self.verticalLayout.addWidget(self.pandastablewidget)
        self.tabWidget = QtWidgets.QTabWidget(Query_Form)
        self.tabWidget.setObjectName("tabWidget")
        self.tab = QtWidgets.QWidget()
        self.tab.setObjectName("tab")
        self.tabWidget.addTab(self.tab, "")
        self.tab_3 = QtWidgets.QWidget()
        self.tab_3.setObjectName("tab_3")
        self.tabWidget.addTab(self.tab_3, "")
        self.tab_2 = QtWidgets.QWidget()
        self.tab_2.setObjectName("tab_2")
        self.tabWidget.addTab(self.tab_2, "")
        self.tab_4 = QtWidgets.QWidget()
        self.tab_4.setObjectName("tab_4")
        self.tabWidget.addTab(self.tab_4, "")
        self.verticalLayout.addWidget(self.tabWidget)
        self.verticalLayout.setStretch(1, 1)
        self.verticalLayout.setStretch(2, 1)

        self.retranslateUi(Query_Form)
        self.tabWidget.setCurrentIndex(0)
        QtCore.QMetaObject.connectSlotsByName(Query_Form)
Exemple #18
0
    def setupUi(self, MainWindow):
        MainWindow.setObjectName("MainWindow")
        MainWindow.resize(1030, 778)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(1)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(MainWindow.sizePolicy().hasHeightForWidth())
        MainWindow.setSizePolicy(sizePolicy)
        qss_file = open(os.getcwd() + '/resource/QSS/Mainwindow.qss').read()
        self.setStyleSheet(qss_file)


        self.centralWidget = QtWidgets.QWidget(MainWindow)
        self.centralWidget.setObjectName("centralWidget")
        self.horizontalLayout_4 = QtWidgets.QHBoxLayout(self.centralWidget)
        self.horizontalLayout_4.setObjectName("horizontalLayout_4")
        self.verticalLayout_3 = QtWidgets.QVBoxLayout()
        self.verticalLayout_3.setObjectName("verticalLayout_3")
        self.verticalLayout_2 = QtWidgets.QVBoxLayout()
        self.verticalLayout_2.setObjectName("verticalLayout_2")
        self.horizontalLayout = QtWidgets.QHBoxLayout()
        self.horizontalLayout.setObjectName("horizontalLayout")
        self.label_prov = QtWidgets.QLabel(self.centralWidget)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_prov.sizePolicy().hasHeightForWidth())
        self.label_prov.setSizePolicy(sizePolicy)
        self.label_prov.setMinimumSize(QtCore.QSize(0, 0))
        self.label_prov.setStyleSheet("font: 9pt \"微软雅黑\";")
        self.label_prov.setObjectName("label_prov")
        self.horizontalLayout.addWidget(self.label_prov)
        self.comboBox_prov = QtWidgets.QComboBox(self.centralWidget)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(1)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.comboBox_prov.sizePolicy().hasHeightForWidth())
        self.comboBox_prov.setSizePolicy(sizePolicy)
        self.comboBox_prov.setMinimumSize(QtCore.QSize(0, 0))
        self.comboBox_prov.setStyleSheet("font: 9pt \"微软雅黑\";")
        self.comboBox_prov.setObjectName("comboBox_prov")
        self.horizontalLayout.addWidget(self.comboBox_prov)
        self.label_city = QtWidgets.QLabel(self.centralWidget)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_city.sizePolicy().hasHeightForWidth())
        self.label_city.setSizePolicy(sizePolicy)
        self.label_city.setMinimumSize(QtCore.QSize(0, 0))
        self.label_city.setStyleSheet("font: 9pt \"微软雅黑\";")
        self.label_city.setObjectName("label_city")
        self.horizontalLayout.addWidget(self.label_city)
        self.comboBox_city = QtWidgets.QComboBox(self.centralWidget)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(1)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.comboBox_city.sizePolicy().hasHeightForWidth())
        self.comboBox_city.setSizePolicy(sizePolicy)
        self.comboBox_city.setMinimumSize(QtCore.QSize(0, 0))
        self.comboBox_city.setStyleSheet("font: 9pt \"微软雅黑\";")
        self.comboBox_city.setObjectName("comboBox_city")
        self.horizontalLayout.addWidget(self.comboBox_city)
        self.label = QtWidgets.QLabel(self.centralWidget)
        self.label.setStyleSheet("font: 9pt \"微软雅黑\";")
        self.label.setObjectName("label")
        self.horizontalLayout.addWidget(self.label)
        self.lineEdit_keyword = QtWidgets.QLineEdit(self.centralWidget)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(1)
        sizePolicy.setVerticalStretch(1)
        sizePolicy.setHeightForWidth(self.lineEdit_keyword.sizePolicy().hasHeightForWidth())
        self.lineEdit_keyword.setSizePolicy(sizePolicy)
        self.lineEdit_keyword.setMinimumSize(QtCore.QSize(0, 0))
        self.lineEdit_keyword.setStyleSheet("font: 9pt \"微软雅黑\";")
        self.lineEdit_keyword.setObjectName("lineEdit_keyword")
        self.horizontalLayout.addWidget(self.lineEdit_keyword)
        self.verticalLayout_2.addLayout(self.horizontalLayout)

        self.pandastablewidget = DataTableWidget(self.centralWidget)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding)
        sizePolicy.setHorizontalStretch(1)
        sizePolicy.setVerticalStretch(1)
        sizePolicy.setHeightForWidth(self.pandastablewidget.sizePolicy().hasHeightForWidth())
        self.pandastablewidget.setSizePolicy(sizePolicy)
        self.pandastablewidget.setMinimumSize(QtCore.QSize(800, 600))
        self.pandastablewidget.setObjectName("pandastablewidget")
        self.verticalLayout_2.addWidget(self.pandastablewidget)
        self.verticalLayout_3.addLayout(self.verticalLayout_2)
        self.horizontalLayout_3 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_3.setObjectName("horizontalLayout_3")
        self.label_display = QtWidgets.QLabel(self.centralWidget)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_display.sizePolicy().hasHeightForWidth())
        self.label_display.setSizePolicy(sizePolicy)
        self.label_display.setStyleSheet("font: 9pt \"微软雅黑\";")
        self.label_display.setObjectName("label_display")
        self.horizontalLayout_3.addWidget(self.label_display)
        self.label_progress = QtWidgets.QLabel(self.centralWidget)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(1)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_progress.sizePolicy().hasHeightForWidth())
        self.label_progress.setSizePolicy(sizePolicy)
        self.label_progress.setStyleSheet("font: 9pt \"微软雅黑\";")
        self.label_progress.setText("")
        self.label_progress.setObjectName("label_progress")
        self.horizontalLayout_3.addWidget(self.label_progress)
        self.verticalLayout_3.addLayout(self.horizontalLayout_3)
        self.horizontalLayout_4.addLayout(self.verticalLayout_3)
        self.verticalLayout = QtWidgets.QVBoxLayout()
        self.verticalLayout.setObjectName("verticalLayout")
        self.horizontalLayout_2 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_2.setObjectName("horizontalLayout_2")
        self.pushButton_crawl = QtWidgets.QPushButton(self.centralWidget)
        self.pushButton_crawl.setStyleSheet("font: 9pt \"微软雅黑\";")
        self.pushButton_crawl.setObjectName("pushButton_crawl")
        self.horizontalLayout_2.addWidget(self.pushButton_crawl)
        self.pushButton_clear = QtWidgets.QPushButton(self.centralWidget)
        self.pushButton_clear.setSizeIncrement(QtCore.QSize(0, 0))
        self.pushButton_clear.setBaseSize(QtCore.QSize(0, 0))
        self.pushButton_clear.setStyleSheet("font: 9pt \"微软雅黑\";")
        self.pushButton_clear.setObjectName("pushButton_clear")
        self.horizontalLayout_2.addWidget(self.pushButton_clear)
        self.verticalLayout.addLayout(self.horizontalLayout_2)
        self.listWidget = QtWidgets.QListWidget(self.centralWidget)
        self.listWidget.setObjectName("listWidget")
        self.verticalLayout.addWidget(self.listWidget)
        self.horizontalLayout_4.addLayout(self.verticalLayout)
        
        
        MainWindow.setCentralWidget(self.centralWidget)
        self.menuBar = QtWidgets.QMenuBar(MainWindow)
        self.menuBar.setGeometry(QtCore.QRect(0, 0, 1030, 26))
        self.menuBar.setObjectName("menuBar")
        self.menu = QtWidgets.QMenu(self.menuBar)
        self.menu.setObjectName("menu")
        self.menu_2 = QtWidgets.QMenu(self.menuBar)
        self.menu_2.setObjectName("menu_2")
        self.menu_3 = QtWidgets.QMenu(self.menuBar)
        self.menu_3.setObjectName("menu_3")
        MainWindow.setMenuBar(self.menuBar)
        self.menu_3.addSeparator()
        self.menu_3.addSeparator()
        self.menuBar.addAction(self.menu.menuAction())
        self.menuBar.addAction(self.menu_2.menuAction())
        self.menuBar.addAction(self.menu_3.menuAction())

        self.retranslateUi(MainWindow)
        QtCore.QMetaObject.connectSlotsByName(MainWindow)

        outPutAction = QtWidgets.QAction(QtGui.QIcon(os.getcwd() + '/resource/spider.png'), '导出文件', self)
        outPutAction.triggered.connect(self.outPutFile)
        self.menu.addAction(outPutAction)
Exemple #19
0
from qtpandas.excepthook import excepthook

# Use QtGui from the compat module to take care if correct sip version, etc.
from qtpandas.compat import QtGui
from qtpandas.models.DataFrameModel import DataFrameModel
from qtpandas.views.DataTableView import DataTableWidget
# from qtpandas.views._ui import icons_rc

sys.excepthook = excepthook # 设置PyQt的异常钩子,在本例中基本没什么用

# 创建一个空的模型,该模型用于存储与处理数据
model = DataFrameModel()

# 创建一个应用用于显示表格
app = QtGui.QApplication([])
widget = DataTableWidget() # 创建一个空的表格,主要用来呈现数据
widget.resize(500, 300) # 调整Widget的大小
widget.show()
# 让表格绑定模型,也就是让表格呈现模型的内容
widget.setViewModel(model)

# 创建测试数据
data = {
    'A': [10, 11, 12],
    'B': [20, 21, 22],
    'C': ['Peter Pan', 'Cpt. Hook', 'Tinkerbell']
}
df = pandas.DataFrame(data)

# 下面两列用来测试委托是否成立
df['A'] = df['A'].astype(numpy.int8) # A列数据格式变成整型
Exemple #20
0
from qtpandas.excepthook import excepthook

# Use QtGui from the compat module to take care if correct sip version, etc.
from qtpandas.compat import QtGui
from qtpandas.models.DataFrameModel import DataFrameModel
from qtpandas.views.DataTableView import DataTableWidget
# from qtpandas.views._ui import icons_rc

sys.excepthook = excepthook

# Setup a new empty model
model = DataFrameModel()

# Setup an application and create a table view widget
app = QtGui.QApplication([])
widget = DataTableWidget()
widget.resize(800, 600)
widget.show()
# Asign the created model"""
widget.setViewModel(model)

# Create some test data
data = {
    'A': [10, 11, 12],
    'B': [20, 21, 22],
    'C': ['Peter Pan', 'Cpt. Hook', 'Tinkerbell']
}
df = pandas.DataFrame(data)
# Convert the column to the numpy.int8 datatype to test the delegates in the
# table int8 is limited to -128-127
Exemple #21
0
    def setupUi(self, MainWindow):
        MainWindow.setObjectName("MainWindow")
        MainWindow.resize(800, 600)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum,
                                           QtWidgets.QSizePolicy.Maximum)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            MainWindow.sizePolicy().hasHeightForWidth())
        MainWindow.setSizePolicy(sizePolicy)
        MainWindow.setAutoFillBackground(False)
        self.centralwidget = QtWidgets.QWidget(MainWindow)
        self.centralwidget.setObjectName("centralwidget")
        self.gridLayout_6 = QtWidgets.QGridLayout(self.centralwidget)
        self.gridLayout_6.setObjectName("gridLayout_6")
        spacerItem = QtWidgets.QSpacerItem(40, 20,
                                           QtWidgets.QSizePolicy.Expanding,
                                           QtWidgets.QSizePolicy.Minimum)
        self.gridLayout_6.addItem(spacerItem, 1, 0, 1, 10)
        self.initDataButton = QtWidgets.QPushButton(self.centralwidget)
        self.initDataButton.setObjectName("initDataButton")
        self.gridLayout_6.addWidget(self.initDataButton, 2, 3, 1, 1)
        spacerItem1 = QtWidgets.QSpacerItem(18, 20,
                                            QtWidgets.QSizePolicy.Expanding,
                                            QtWidgets.QSizePolicy.Minimum)
        self.gridLayout_6.addItem(spacerItem1, 2, 5, 1, 1)
        self.plotButton = QtWidgets.QPushButton(self.centralwidget)
        self.plotButton.setObjectName("plotButton")
        self.gridLayout_6.addWidget(self.plotButton, 2, 8, 1, 1)
        self.tabWidget = QtWidgets.QTabWidget(self.centralwidget)
        self.tabWidget.setObjectName("tabWidget")
        self.tab = QtWidgets.QWidget()
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred,
                                           QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.tab.sizePolicy().hasHeightForWidth())
        self.tab.setSizePolicy(sizePolicy)
        self.tab.setObjectName("tab")
        self.gridLayout_3 = QtWidgets.QGridLayout(self.tab)
        self.gridLayout_3.setContentsMargins(0, 0, 0, 0)
        self.gridLayout_3.setObjectName("gridLayout_3")
        self.formLayout = QtWidgets.QFormLayout()
        self.formLayout.setContentsMargins(10, -1, -1, 0)
        self.formLayout.setVerticalSpacing(0)
        self.formLayout.setObjectName("formLayout")
        spacerItem2 = QtWidgets.QSpacerItem(40, 20,
                                            QtWidgets.QSizePolicy.Expanding,
                                            QtWidgets.QSizePolicy.Minimum)
        self.formLayout.setItem(0, QtWidgets.QFormLayout.SpanningRole,
                                spacerItem2)
        self.pushButton_openfile = QtWidgets.QPushButton(self.tab)
        self.pushButton_openfile.setObjectName("pushButton_openfile")
        self.formLayout.setWidget(1, QtWidgets.QFormLayout.LabelRole,
                                  self.pushButton_openfile)
        spacerItem3 = QtWidgets.QSpacerItem(40, 20,
                                            QtWidgets.QSizePolicy.Expanding,
                                            QtWidgets.QSizePolicy.Minimum)
        self.formLayout.setItem(1, QtWidgets.QFormLayout.FieldRole,
                                spacerItem3)
        spacerItem4 = QtWidgets.QSpacerItem(40, 20,
                                            QtWidgets.QSizePolicy.Expanding,
                                            QtWidgets.QSizePolicy.Minimum)
        self.formLayout.setItem(2, QtWidgets.QFormLayout.SpanningRole,
                                spacerItem4)
        self.gridLayout_3.addLayout(self.formLayout, 0, 0, 1, 1)
        self.formLayout_2 = QtWidgets.QFormLayout()
        self.formLayout_2.setObjectName("formLayout_2")
        self.label_4 = QtWidgets.QLabel(self.tab)
        self.label_4.setObjectName("label_4")
        self.formLayout_2.setWidget(0, QtWidgets.QFormLayout.LabelRole,
                                    self.label_4)
        self.dataDescTable = QtWidgets.QTableWidget(self.tab)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding,
                                           QtWidgets.QSizePolicy.Expanding)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(1)
        sizePolicy.setHeightForWidth(
            self.dataDescTable.sizePolicy().hasHeightForWidth())
        self.dataDescTable.setSizePolicy(sizePolicy)
        self.dataDescTable.setSizeAdjustPolicy(
            QtWidgets.QAbstractScrollArea.AdjustToContents)
        self.dataDescTable.setEditTriggers(
            QtWidgets.QAbstractItemView.NoEditTriggers)
        self.dataDescTable.setShowGrid(True)
        self.dataDescTable.setWordWrap(False)
        self.dataDescTable.setRowCount(0)
        self.dataDescTable.setObjectName("dataDescTable")
        self.dataDescTable.setColumnCount(0)
        self.dataDescTable.horizontalHeader().setDefaultSectionSize(50)
        self.formLayout_2.setWidget(1, QtWidgets.QFormLayout.SpanningRole,
                                    self.dataDescTable)
        self.gridLayout_3.addLayout(self.formLayout_2, 1, 0, 1, 1)
        self.tabWidget.addTab(self.tab, "")
        self.tab_2 = QtWidgets.QWidget()
        self.tab_2.setObjectName("tab_2")
        self.gridLayout = QtWidgets.QGridLayout(self.tab_2)
        self.gridLayout.setContentsMargins(0, 0, 0, 0)
        self.gridLayout.setObjectName("gridLayout")
        self.groupBox_2 = QtWidgets.QGroupBox(self.tab_2)
        self.groupBox_2.setObjectName("groupBox_2")
        self.gridLayout_5 = QtWidgets.QGridLayout(self.groupBox_2)
        self.gridLayout_5.setObjectName("gridLayout_5")
        self.horizontalLayout_3 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_3.setObjectName("horizontalLayout_3")
        self.radioButton_ignorenan = QtWidgets.QRadioButton(self.groupBox_2)
        self.radioButton_ignorenan.setChecked(True)
        self.radioButton_ignorenan.setObjectName("radioButton_ignorenan")
        self.horizontalLayout_3.addWidget(self.radioButton_ignorenan)
        self.radioButton_delnan = QtWidgets.QRadioButton(self.groupBox_2)
        self.radioButton_delnan.setChecked(False)
        self.radioButton_delnan.setObjectName("radioButton_delnan")
        self.horizontalLayout_3.addWidget(self.radioButton_delnan)
        self.radioButton_fillnan = QtWidgets.QRadioButton(self.groupBox_2)
        self.radioButton_fillnan.setObjectName("radioButton_fillnan")
        self.horizontalLayout_3.addWidget(self.radioButton_fillnan)
        self.gridLayout_5.addLayout(self.horizontalLayout_3, 0, 0, 1, 6)
        self.checkNaNButton = QtWidgets.QPushButton(self.groupBox_2)
        self.checkNaNButton.setObjectName("checkNaNButton")
        self.gridLayout_5.addWidget(self.checkNaNButton, 1, 0, 1, 1)
        self.repealButton_nan = QtWidgets.QPushButton(self.groupBox_2)
        self.repealButton_nan.setObjectName("repealButton_nan")
        self.gridLayout_5.addWidget(self.repealButton_nan, 1, 4, 1, 1)
        spacerItem5 = QtWidgets.QSpacerItem(146, 20,
                                            QtWidgets.QSizePolicy.Expanding,
                                            QtWidgets.QSizePolicy.Minimum)
        self.gridLayout_5.addItem(spacerItem5, 1, 5, 1, 1)
        self.okButton_nan = QtWidgets.QPushButton(self.groupBox_2)
        self.okButton_nan.setObjectName("okButton_nan")
        self.gridLayout_5.addWidget(self.okButton_nan, 1, 2, 1, 1)
        spacerItem6 = QtWidgets.QSpacerItem(40, 20,
                                            QtWidgets.QSizePolicy.Expanding,
                                            QtWidgets.QSizePolicy.Minimum)
        self.gridLayout_5.addItem(spacerItem6, 1, 1, 1, 1)
        spacerItem7 = QtWidgets.QSpacerItem(40, 20,
                                            QtWidgets.QSizePolicy.Expanding,
                                            QtWidgets.QSizePolicy.Minimum)
        self.gridLayout_5.addItem(spacerItem7, 1, 3, 1, 1)
        self.gridLayout.addWidget(self.groupBox_2, 0, 0, 1, 1)
        self.groupBox_3 = QtWidgets.QGroupBox(self.tab_2)
        self.groupBox_3.setObjectName("groupBox_3")
        self.gridLayout_4 = QtWidgets.QGridLayout(self.groupBox_3)
        self.gridLayout_4.setObjectName("gridLayout_4")
        spacerItem8 = QtWidgets.QSpacerItem(232, 20,
                                            QtWidgets.QSizePolicy.Expanding,
                                            QtWidgets.QSizePolicy.Minimum)
        self.gridLayout_4.addItem(spacerItem8, 3, 5, 1, 1)
        self.initButton_nondim = QtWidgets.QPushButton(self.groupBox_3)
        self.initButton_nondim.setObjectName("initButton_nondim")
        self.gridLayout_4.addWidget(self.initButton_nondim, 3, 4, 1, 1)
        self.okButton_nondim = QtWidgets.QPushButton(self.groupBox_3)
        self.okButton_nondim.setObjectName("okButton_nondim")
        self.gridLayout_4.addWidget(self.okButton_nondim, 3, 0, 1, 1)
        self.repealButton_nondim = QtWidgets.QPushButton(self.groupBox_3)
        self.repealButton_nondim.setObjectName("repealButton_nondim")
        self.gridLayout_4.addWidget(self.repealButton_nondim, 3, 2, 1, 1)
        spacerItem9 = QtWidgets.QSpacerItem(74, 20,
                                            QtWidgets.QSizePolicy.Expanding,
                                            QtWidgets.QSizePolicy.Minimum)
        self.gridLayout_4.addItem(spacerItem9, 3, 1, 1, 1)
        spacerItem10 = QtWidgets.QSpacerItem(73, 20,
                                             QtWidgets.QSizePolicy.Expanding,
                                             QtWidgets.QSizePolicy.Minimum)
        self.gridLayout_4.addItem(spacerItem10, 3, 3, 1, 1)
        self.horizontalLayout_4 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_4.setObjectName("horizontalLayout_4")
        self.radioButton_ignorenondim = QtWidgets.QRadioButton(self.groupBox_3)
        self.radioButton_ignorenondim.setObjectName("radioButton_ignorenondim")
        self.horizontalLayout_4.addWidget(self.radioButton_ignorenondim)
        self.radioButton_zstandard = QtWidgets.QRadioButton(self.groupBox_3)
        self.radioButton_zstandard.setChecked(True)
        self.radioButton_zstandard.setObjectName("radioButton_zstandard")
        self.horizontalLayout_4.addWidget(self.radioButton_zstandard)
        self.radioButton_01standard = QtWidgets.QRadioButton(self.groupBox_3)
        self.radioButton_01standard.setObjectName("radioButton_01standard")
        self.horizontalLayout_4.addWidget(self.radioButton_01standard)
        self.radioButton_normalizer = QtWidgets.QRadioButton(self.groupBox_3)
        self.radioButton_normalizer.setObjectName("radioButton_normalizer")
        self.horizontalLayout_4.addWidget(self.radioButton_normalizer)
        self.gridLayout_4.addLayout(self.horizontalLayout_4, 0, 0, 1, 6)
        self.gridLayout.addWidget(self.groupBox_3, 1, 0, 1, 1)
        self.tabWidget.addTab(self.tab_2, "")
        self.tab_3 = QtWidgets.QWidget()
        self.tab_3.setObjectName("tab_3")
        self.gridLayout_8 = QtWidgets.QGridLayout(self.tab_3)
        self.gridLayout_8.setContentsMargins(0, 0, 0, 0)
        self.gridLayout_8.setObjectName("gridLayout_8")
        self.groupBox_2D = QtWidgets.QGroupBox(self.tab_3)
        self.groupBox_2D.setEnabled(True)
        self.groupBox_2D.setCheckable(False)
        self.groupBox_2D.setObjectName("groupBox_2D")
        self.radioButton_2Dline = QtWidgets.QRadioButton(self.groupBox_2D)
        self.radioButton_2Dline.setGeometry(QtCore.QRect(10, 22, 59, 16))
        self.radioButton_2Dline.setChecked(True)
        self.radioButton_2Dline.setObjectName("radioButton_2Dline")
        self.radioButton_2Dhist = QtWidgets.QRadioButton(self.groupBox_2D)
        self.radioButton_2Dhist.setGeometry(QtCore.QRect(108, 22, 59, 16))
        self.radioButton_2Dhist.setObjectName("radioButton_2Dhist")
        self.radioButton_2Dscatter = QtWidgets.QRadioButton(self.groupBox_2D)
        self.radioButton_2Dscatter.setGeometry(QtCore.QRect(10, 44, 59, 16))
        self.radioButton_2Dscatter.setObjectName("radioButton_2Dscatter")
        self.checkBox_histfit = QtWidgets.QCheckBox(self.groupBox_2D)
        self.checkBox_histfit.setEnabled(False)
        self.checkBox_histfit.setGeometry(QtCore.QRect(108, 44, 71, 16))
        self.checkBox_histfit.setObjectName("checkBox_histfit")
        self.gridLayout_8.addWidget(self.groupBox_2D, 1, 0, 1, 1)
        self.groupBox_fit = QtWidgets.QGroupBox(self.tab_3)
        self.groupBox_fit.setEnabled(False)
        self.groupBox_fit.setObjectName("groupBox_fit")
        self.gridLayout_2 = QtWidgets.QGridLayout(self.groupBox_fit)
        self.gridLayout_2.setObjectName("gridLayout_2")
        self.label_9 = QtWidgets.QLabel(self.groupBox_fit)
        self.label_9.setObjectName("label_9")
        self.gridLayout_2.addWidget(self.label_9, 0, 0, 1, 1)
        self.comboBox_fitmethod = QtWidgets.QComboBox(self.groupBox_fit)
        self.comboBox_fitmethod.setObjectName("comboBox_fitmethod")
        self.comboBox_fitmethod.addItem("")
        self.comboBox_fitmethod.addItem("")
        self.comboBox_fitmethod.addItem("")
        self.gridLayout_2.addWidget(self.comboBox_fitmethod, 1, 1, 1, 1)
        self.comboBox_2d_n = QtWidgets.QComboBox(self.groupBox_fit)
        self.comboBox_2d_n.setEnabled(False)
        self.comboBox_2d_n.setEditable(True)
        self.comboBox_2d_n.setObjectName("comboBox_2d_n")
        self.comboBox_2d_n.addItem("")
        self.comboBox_2d_n.addItem("")
        self.comboBox_2d_n.addItem("")
        self.comboBox_2d_n.addItem("")
        self.comboBox_2d_n.addItem("")
        self.gridLayout_2.addWidget(self.comboBox_2d_n, 2, 1, 1, 1)
        self.label_10 = QtWidgets.QLabel(self.groupBox_fit)
        self.label_10.setObjectName("label_10")
        self.gridLayout_2.addWidget(self.label_10, 1, 0, 1, 1)
        self.label_11 = QtWidgets.QLabel(self.groupBox_fit)
        self.label_11.setObjectName("label_11")
        self.gridLayout_2.addWidget(self.label_11, 2, 0, 1, 1)
        self.checkBox_fit = QtWidgets.QCheckBox(self.groupBox_fit)
        self.checkBox_fit.setEnabled(False)
        self.checkBox_fit.setText("")
        self.checkBox_fit.setObjectName("checkBox_fit")
        self.gridLayout_2.addWidget(self.checkBox_fit, 0, 1, 1, 1)
        self.gridLayout_8.addWidget(self.groupBox_fit, 1, 1, 2, 1)
        self.groupBox_3D = QtWidgets.QGroupBox(self.tab_3)
        self.groupBox_3D.setEnabled(False)
        self.groupBox_3D.setObjectName("groupBox_3D")
        self.radioButton_3Dline = QtWidgets.QRadioButton(self.groupBox_3D)
        self.radioButton_3Dline.setGeometry(QtCore.QRect(10, 37, 59, 16))
        self.radioButton_3Dline.setChecked(True)
        self.radioButton_3Dline.setObjectName("radioButton_3Dline")
        self.radioButton_3Dsurface = QtWidgets.QRadioButton(self.groupBox_3D)
        self.radioButton_3Dsurface.setGeometry(QtCore.QRect(147, 37, 59, 16))
        self.radioButton_3Dsurface.setObjectName("radioButton_3Dsurface")
        self.radioButton_3Dscatter = QtWidgets.QRadioButton(self.groupBox_3D)
        self.radioButton_3Dscatter.setGeometry(QtCore.QRect(79, 37, 59, 16))
        self.radioButton_3Dscatter.setObjectName("radioButton_3Dscatter")
        self.gridLayout_8.addWidget(self.groupBox_3D, 2, 0, 1, 1)
        self.groupBox = QtWidgets.QGroupBox(self.tab_3)
        self.groupBox.setObjectName("groupBox")
        self.gridLayout_7 = QtWidgets.QGridLayout(self.groupBox)
        self.gridLayout_7.setObjectName("gridLayout_7")
        self.lineEdit_datax = QtWidgets.QLineEdit(self.groupBox)
        self.lineEdit_datax.setObjectName("lineEdit_datax")
        self.gridLayout_7.addWidget(self.lineEdit_datax, 1, 1, 1, 1)
        self.label_8 = QtWidgets.QLabel(self.groupBox)
        self.label_8.setObjectName("label_8")
        self.gridLayout_7.addWidget(self.label_8, 1, 4, 1, 1)
        self.label_6 = QtWidgets.QLabel(self.groupBox)
        self.label_6.setInputMethodHints(QtCore.Qt.ImhNone)
        self.label_6.setScaledContents(False)
        self.label_6.setWordWrap(True)
        self.label_6.setObjectName("label_6")
        self.gridLayout_7.addWidget(self.label_6, 0, 0, 1, 6)
        self.lineEdit_dataz = QtWidgets.QLineEdit(self.groupBox)
        self.lineEdit_dataz.setEnabled(False)
        self.lineEdit_dataz.setObjectName("lineEdit_dataz")
        self.gridLayout_7.addWidget(self.lineEdit_dataz, 1, 5, 1, 1)
        self.lineEdit_datay = QtWidgets.QLineEdit(self.groupBox)
        self.lineEdit_datay.setObjectName("lineEdit_datay")
        self.gridLayout_7.addWidget(self.lineEdit_datay, 1, 3, 1, 1)
        self.label_7 = QtWidgets.QLabel(self.groupBox)
        self.label_7.setObjectName("label_7")
        self.gridLayout_7.addWidget(self.label_7, 1, 2, 1, 1)
        self.label_5 = QtWidgets.QLabel(self.groupBox)
        self.label_5.setObjectName("label_5")
        self.gridLayout_7.addWidget(self.label_5, 1, 0, 1, 1)
        self.gridLayout_8.addWidget(self.groupBox, 3, 0, 1, 2)
        self.groupBox_6 = QtWidgets.QGroupBox(self.tab_3)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred,
                                           QtWidgets.QSizePolicy.Minimum)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.groupBox_6.sizePolicy().hasHeightForWidth())
        self.groupBox_6.setSizePolicy(sizePolicy)
        self.groupBox_6.setObjectName("groupBox_6")
        self.gridLayout_11 = QtWidgets.QGridLayout(self.groupBox_6)
        self.gridLayout_11.setObjectName("gridLayout_11")
        self.radioButton_2D = QtWidgets.QRadioButton(self.groupBox_6)
        self.radioButton_2D.setChecked(True)
        self.radioButton_2D.setObjectName("radioButton_2D")
        self.gridLayout_11.addWidget(self.radioButton_2D, 0, 0, 1, 1)
        self.radioButton_3D = QtWidgets.QRadioButton(self.groupBox_6)
        self.radioButton_3D.setObjectName("radioButton_3D")
        self.gridLayout_11.addWidget(self.radioButton_3D, 0, 1, 1, 1)
        self.gridLayout_8.addWidget(self.groupBox_6, 0, 0, 1, 2)
        self.tabWidget.addTab(self.tab_3, "")
        self.gridLayout_6.addWidget(self.tabWidget, 0, 0, 1, 10)
        self.saveDataButton = QtWidgets.QPushButton(self.centralwidget)
        self.saveDataButton.setObjectName("saveDataButton")
        self.gridLayout_6.addWidget(self.saveDataButton, 2, 6, 1, 1)
        spacerItem11 = QtWidgets.QSpacerItem(20, 40,
                                             QtWidgets.QSizePolicy.Minimum,
                                             QtWidgets.QSizePolicy.Expanding)
        self.gridLayout_6.addItem(spacerItem11, 0, 10, 4, 1)
        spacerItem12 = QtWidgets.QSpacerItem(18, 20,
                                             QtWidgets.QSizePolicy.Expanding,
                                             QtWidgets.QSizePolicy.Minimum)
        self.gridLayout_6.addItem(spacerItem12, 2, 0, 1, 1)
        spacerItem13 = QtWidgets.QSpacerItem(18, 20,
                                             QtWidgets.QSizePolicy.Expanding,
                                             QtWidgets.QSizePolicy.Minimum)
        self.gridLayout_6.addItem(spacerItem13, 2, 7, 1, 1)
        spacerItem14 = QtWidgets.QSpacerItem(40, 20,
                                             QtWidgets.QSizePolicy.Expanding,
                                             QtWidgets.QSizePolicy.Minimum)
        self.gridLayout_6.addItem(spacerItem14, 3, 0, 1, 10)
        self.textBrowser = QtWidgets.QTextBrowser(self.centralwidget)
        self.textBrowser.setEnabled(True)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding,
                                           QtWidgets.QSizePolicy.Minimum)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.textBrowser.sizePolicy().hasHeightForWidth())
        self.textBrowser.setSizePolicy(sizePolicy)
        self.textBrowser.setSizeAdjustPolicy(
            QtWidgets.QAbstractScrollArea.AdjustToContentsOnFirstShow)
        self.textBrowser.setReadOnly(True)
        self.textBrowser.setObjectName("textBrowser")
        self.gridLayout_6.addWidget(self.textBrowser, 4, 0, 1, 12)
        spacerItem15 = QtWidgets.QSpacerItem(17, 20,
                                             QtWidgets.QSizePolicy.Expanding,
                                             QtWidgets.QSizePolicy.Minimum)
        self.gridLayout_6.addItem(spacerItem15, 2, 9, 1, 1)
        self.verticalLayout = QtWidgets.QVBoxLayout()
        self.verticalLayout.setObjectName("verticalLayout")
        self.horizontalLayout_2 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_2.setObjectName("horizontalLayout_2")
        self.label_2 = QtWidgets.QLabel(self.centralwidget)
        self.label_2.setObjectName("label_2")
        self.horizontalLayout_2.addWidget(self.label_2)
        self.filenameLabel = QtWidgets.QLabel(self.centralwidget)
        self.filenameLabel.setText("")
        self.filenameLabel.setObjectName("filenameLabel")
        self.horizontalLayout_2.addWidget(self.filenameLabel)
        spacerItem16 = QtWidgets.QSpacerItem(40, 20,
                                             QtWidgets.QSizePolicy.Expanding,
                                             QtWidgets.QSizePolicy.Minimum)
        self.horizontalLayout_2.addItem(spacerItem16)
        self.label = QtWidgets.QLabel(self.centralwidget)
        self.label.setObjectName("label")
        self.horizontalLayout_2.addWidget(self.label)
        self.fileformatLabel = QtWidgets.QLabel(self.centralwidget)
        self.fileformatLabel.setText("")
        self.fileformatLabel.setObjectName("fileformatLabel")
        self.horizontalLayout_2.addWidget(self.fileformatLabel)
        spacerItem17 = QtWidgets.QSpacerItem(40, 20,
                                             QtWidgets.QSizePolicy.Expanding,
                                             QtWidgets.QSizePolicy.Minimum)
        self.horizontalLayout_2.addItem(spacerItem17)
        self.label_3 = QtWidgets.QLabel(self.centralwidget)
        self.label_3.setObjectName("label_3")
        self.horizontalLayout_2.addWidget(self.label_3)
        self.dataDimLabel = QtWidgets.QLabel(self.centralwidget)
        self.dataDimLabel.setText("")
        self.dataDimLabel.setObjectName("dataDimLabel")
        self.horizontalLayout_2.addWidget(self.dataDimLabel)
        self.verticalLayout.addLayout(self.horizontalLayout_2)
        self.tableWidget = DataTableWidget(self.centralwidget)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding,
                                           QtWidgets.QSizePolicy.Expanding)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.tableWidget.sizePolicy().hasHeightForWidth())
        self.tableWidget.setSizePolicy(sizePolicy)
        self.tableWidget.setObjectName("tableWidget")
        self.verticalLayout.addWidget(self.tableWidget)
        self.gridLayout_6.addLayout(self.verticalLayout, 0, 11, 4, 1)
        self.pushButton_refresh = QtWidgets.QPushButton(self.centralwidget)
        self.pushButton_refresh.setObjectName("pushButton_refresh")
        self.gridLayout_6.addWidget(self.pushButton_refresh, 2, 1, 1, 1)
        spacerItem18 = QtWidgets.QSpacerItem(40, 20,
                                             QtWidgets.QSizePolicy.Expanding,
                                             QtWidgets.QSizePolicy.Minimum)
        self.gridLayout_6.addItem(spacerItem18, 2, 2, 1, 1)
        MainWindow.setCentralWidget(self.centralwidget)
        self.menubar = QtWidgets.QMenuBar(MainWindow)
        self.menubar.setGeometry(QtCore.QRect(0, 0, 800, 23))
        self.menubar.setObjectName("menubar")
        self.menu = QtWidgets.QMenu(self.menubar)
        self.menu.setObjectName("menu")
        MainWindow.setMenuBar(self.menubar)
        self.statusbar = QtWidgets.QStatusBar(MainWindow)
        self.statusbar.setObjectName("statusbar")
        MainWindow.setStatusBar(self.statusbar)
        self.menubar.addAction(self.menu.menuAction())

        self.retranslateUi(MainWindow)
        self.tabWidget.setCurrentIndex(0)
        QtCore.QMetaObject.connectSlotsByName(MainWindow)
        MainWindow.setTabOrder(self.tabWidget, self.pushButton_openfile)
        MainWindow.setTabOrder(self.pushButton_openfile,
                               self.pushButton_refresh)
        MainWindow.setTabOrder(self.pushButton_refresh, self.initDataButton)
        MainWindow.setTabOrder(self.initDataButton, self.saveDataButton)
        MainWindow.setTabOrder(self.saveDataButton, self.plotButton)
        MainWindow.setTabOrder(self.plotButton, self.radioButton_ignorenan)
        MainWindow.setTabOrder(self.radioButton_ignorenan,
                               self.radioButton_delnan)
        MainWindow.setTabOrder(self.radioButton_delnan,
                               self.radioButton_fillnan)
        MainWindow.setTabOrder(self.radioButton_fillnan, self.checkNaNButton)
        MainWindow.setTabOrder(self.checkNaNButton, self.okButton_nan)
        MainWindow.setTabOrder(self.okButton_nan, self.repealButton_nan)
        MainWindow.setTabOrder(self.repealButton_nan,
                               self.radioButton_ignorenondim)
        MainWindow.setTabOrder(self.radioButton_ignorenondim,
                               self.radioButton_zstandard)
        MainWindow.setTabOrder(self.radioButton_zstandard,
                               self.radioButton_01standard)
        MainWindow.setTabOrder(self.radioButton_01standard,
                               self.radioButton_normalizer)
        MainWindow.setTabOrder(self.radioButton_normalizer,
                               self.okButton_nondim)
        MainWindow.setTabOrder(self.okButton_nondim, self.radioButton_2D)
        MainWindow.setTabOrder(self.radioButton_2D, self.radioButton_3D)
        MainWindow.setTabOrder(self.radioButton_3D, self.radioButton_2Dline)
        MainWindow.setTabOrder(self.radioButton_2Dline,
                               self.radioButton_3Dline)
        MainWindow.setTabOrder(self.radioButton_3Dline, self.lineEdit_datax)
        MainWindow.setTabOrder(self.lineEdit_datax, self.lineEdit_datay)
        MainWindow.setTabOrder(self.lineEdit_datay, self.lineEdit_dataz)
        MainWindow.setTabOrder(self.lineEdit_dataz, self.textBrowser)
Exemple #22
0
from qtpandas.excepthook import excepthook

# Use QtGui from the compat module to take care if correct sip version, etc.
from qtpandas.compat import QtGui
from qtpandas.models.DataFrameModel import DataFrameModel
from qtpandas.views.DataTableView import DataTableWidget
# from qtpandas.views._ui import icons_rc

sys.excepthook = excepthook  # 設定PyQt的異常鉤子,基本上在本例沒什麼作用

# 建立一個空的模型,該模型用來儲存與處理資料
model = DataFrameModel()

# 建立一個應用程式顯示表格
app = QtGui.QApplication([])
widget = DataTableWidget()  # 建立一個空的表格,用來呈現資料
widget.resize(500, 300)  # 調整Widget的大小
widget.show()
# 讓表格繫結模型,也就是呈現模型的內容
widget.setViewModel(model)

# 建立測試資料
data = {
    'A': [10, 11, 12],
    'B': [20, 21, 22],
    'C': ['Peter Pan', 'Cpt. Hook', 'Tinkerbell']
}
df = pandas.DataFrame(data)

# 下面兩列用來測試委託是否成立
df['A'] = df['A'].astype(numpy.int8)  # A欄資料格式變成整數
Exemple #23
0
    def __init__(self, parent=None):
        super(TestWidget, self).__init__(parent)
        #FIXME: Make resize adapt to users screen.
        self.resize(1680, 756)
        self.move(0, 0)

        self.df = pandas.DataFrame()
        self.dataModel = None

        #  init the data view's
        self.dataTableView = DataTableWidget(self)
        # self.dataTableView.setSortingEnabled(True)
        # self.dataTableView.setAlternatingRowColors(True)

        self.dataListView = QtGui.QListView(self)
        self.dataListView.setAlternatingRowColors(True)

        self.dataComboBox = QtGui.QComboBox(self)

        # make combobox to choose the model column for dataComboBox and dataListView
        self.chooseColumnComboBox = QtGui.QComboBox(self)

        self.buttonCsvData = QtGui.QPushButton("load csv data")
        self.buttonRandomData = QtGui.QPushButton("load random data")
        importDialog = CSVImportDialog(self)
        importDialog.load.connect(self.updateModel)
        self.buttonCsvData.clicked.connect(lambda: importDialog.show())
        self.buttonRandomData.clicked.connect(lambda: self.setDataFrame( getRandomData(rows=100, columns=100) ))

        self.exportDialog = CSVExportDialog(self)

        self.buttonCSVExport = QtGui.QPushButton("export to csv")
        self.buttonCSVExport.clicked.connect(self._exportModel)
        self.buttonLayout = QtGui.QHBoxLayout()
        self.buttonLayout.addWidget(self.buttonCsvData)
        self.buttonLayout.addWidget(self.buttonCSVExport)
        self.buttonLayout.addWidget(self.buttonRandomData)

        self.mainLayout = QtGui.QVBoxLayout()
        self.setLayout(self.mainLayout)
        self.mainLayout.addLayout(self.buttonLayout)

        self.mainLayout.addWidget(self.dataTableView)

        self.spinbox = QtGui.QSpinBox()
        self.mainLayout.addWidget(self.spinbox)
        self.spinbox.setMaximum(99999999999)
        self.spinbox.setValue(99999999999)

        self.rightLayout = QtGui.QVBoxLayout()
        self.chooseColumLayout = QtGui.QHBoxLayout()
        self.mainLayout.addLayout(self.rightLayout)
        self.rightLayout.addLayout(self.chooseColumLayout)
        self.chooseColumLayout.addWidget(QtGui.QLabel("Choose column:"))
        self.chooseColumLayout.addWidget(self.chooseColumnComboBox)
        self.rightLayout.addWidget(self.dataListView)
        self.rightLayout.addWidget(self.dataComboBox)

        self.tableViewColumnDtypes = QtGui.QTableView(self)
        self.rightLayout.addWidget(QtGui.QLabel('dtypes'))
        self.rightLayout.addWidget(self.tableViewColumnDtypes)
        self.buttonGoToColumn = QtGui.QPushButton("go to column")
        self.rightLayout.addWidget(self.buttonGoToColumn)
        self.buttonGoToColumn.clicked.connect(self.goToColumn)

        self.buttonSetFilter = QtGui.QPushButton("set filter")
        self.rightLayout.addWidget(self.buttonSetFilter)
        self.buttonSetFilter.clicked.connect(self.setFilter)
        self.buttonClearFilter = QtGui.QPushButton("clear filter")
        self.rightLayout.addWidget(self.buttonClearFilter)
        self.buttonClearFilter.clicked.connect(self.clearFilter)
        self.lineEditFilterCondition = QtGui.QLineEdit("freeSearch('am')")
        self.rightLayout.addWidget(self.lineEditFilterCondition)

        self.chooseColumnComboBox.currentIndexChanged.connect(self.setModelColumn)

        self.dataListView.mouseReleaseEvent = self.mouseReleaseEvent

        self.dropLineEdit = DropLineEdit("drop data from table here", self)
        self.rightLayout.addWidget(self.dropLineEdit)

        self.dropWidget = ComplexDropWidget(self)
        self.dropWidget.dropRecieved.connect(self.processDataDrops)
        self.rightLayout.addWidget(self.dropWidget)
Exemple #24
0
    def setupUi(self, MainWindow):
        MainWindow.setObjectName("MainWindow")
        MainWindow.resize(1068, 737)
        self.centralwidget = QtWidgets.QWidget(MainWindow)
        self.centralwidget.setObjectName("centralwidget")
        self.pandastablewidget = DataTableWidget(self.centralwidget)
        self.pandastablewidget.setGeometry(QtCore.QRect(0, 0, 711, 691))
        self.pandastablewidget.setObjectName("pandastablewidget")
        self.label_2 = QtWidgets.QLabel(self.pandastablewidget)
        self.label_2.setGeometry(QtCore.QRect(40, 120, 131, 41))
        self.label_2.setObjectName("label_2")
        self.layoutWidget = QtWidgets.QWidget(self.centralwidget)
        self.layoutWidget.setGeometry(QtCore.QRect(730, 390, 321, 301))
        self.layoutWidget.setObjectName("layoutWidget")
        self.verticalLayout = QtWidgets.QVBoxLayout(self.layoutWidget)
        self.verticalLayout.setContentsMargins(0, 0, 0, 0)
        self.verticalLayout.setObjectName("verticalLayout")
        self.label = QtWidgets.QLabel(self.layoutWidget)
        self.label.setObjectName("label")
        self.verticalLayout.addWidget(self.label)
        self.tableView = QtWidgets.QTableView(self.layoutWidget)
        self.tableView.setObjectName("tableView")
        self.verticalLayout.addWidget(self.tableView)
        self.layoutWidget1 = QtWidgets.QWidget(self.centralwidget)
        self.layoutWidget1.setGeometry(QtCore.QRect(730, 30, 321, 301))
        self.layoutWidget1.setObjectName("layoutWidget1")
        self.verticalLayout_2 = QtWidgets.QVBoxLayout(self.layoutWidget1)
        self.verticalLayout_2.setContentsMargins(0, 0, 0, 0)
        self.verticalLayout_2.setObjectName("verticalLayout_2")
        self.label_3 = QtWidgets.QLabel(self.layoutWidget1)
        self.label_3.setObjectName("label_3")
        self.verticalLayout_2.addWidget(self.label_3)
        self.tableView_2 = QtWidgets.QTableView(self.layoutWidget1)
        self.tableView_2.setObjectName("tableView_2")
        self.verticalLayout_2.addWidget(self.tableView_2)
        MainWindow.setCentralWidget(self.centralwidget)
        self.menubar = QtWidgets.QMenuBar(MainWindow)
        self.menubar.setGeometry(QtCore.QRect(0, 0, 1068, 23))
        self.menubar.setObjectName("menubar")
        self.menuFile = QtWidgets.QMenu(self.menubar)
        self.menuFile.setObjectName("menuFile")
        self.menuSave_as = QtWidgets.QMenu(self.menuFile)
        self.menuSave_as.setObjectName("menuSave_as")
        self.menuQuick_operation = QtWidgets.QMenu(self.menubar)
        self.menuQuick_operation.setObjectName("menuQuick_operation")
        self.menuSelect = QtWidgets.QMenu(self.menubar)
        self.menuSelect.setObjectName("menuSelect")
        self.menuMatplotlib = QtWidgets.QMenu(self.menubar)
        self.menuMatplotlib.setObjectName("menuMatplotlib")
        self.menuScientific_computation = QtWidgets.QMenu(self.menubar)
        self.menuScientific_computation.setObjectName(
            "menuScientific_computation")
        MainWindow.setMenuBar(self.menubar)
        self.statusbar = QtWidgets.QStatusBar(MainWindow)
        self.statusbar.setObjectName("statusbar")
        MainWindow.setStatusBar(self.statusbar)
        self.actionOpen_file = QtWidgets.QAction(MainWindow)
        self.actionOpen_file.setObjectName("actionOpen_file")
        self.actionas_a_Csv_File = QtWidgets.QAction(MainWindow)
        self.actionas_a_Csv_File.setObjectName("actionas_a_Csv_File")
        self.actionas_a_Excel_file = QtWidgets.QAction(MainWindow)
        self.actionas_a_Excel_file.setObjectName("actionas_a_Excel_file")
        self.actionExit = QtWidgets.QAction(MainWindow)
        self.actionExit.setObjectName("actionExit")
        self.actionDelete_problematic_rows = QtWidgets.QAction(MainWindow)
        self.actionDelete_problematic_rows.setObjectName(
            "actionDelete_problematic_rows")
        self.actionDelete_problematic_columns = QtWidgets.QAction(MainWindow)
        self.actionDelete_problematic_columns.setObjectName(
            "actionDelete_problematic_columns")
        self.actionDelete_duplicate_values = QtWidgets.QAction(MainWindow)
        self.actionDelete_duplicate_values.setObjectName(
            "actionDelete_duplicate_values")
        self.actionUpdating_all_the_Windows = QtWidgets.QAction(MainWindow)
        self.actionUpdating_all_the_Windows.setObjectName(
            "actionUpdating_all_the_Windows")
        self.actionplot = QtWidgets.QAction(MainWindow)
        self.actionplot.setObjectName("actionplot")
        self.actionread_only = QtWidgets.QAction(MainWindow)
        self.actionread_only.setObjectName("actionread_only")
        self.actioninplace = QtWidgets.QAction(MainWindow)
        self.actioninplace.setObjectName("actioninplace")
        self.actionFill_problematic_columns_with = QtWidgets.QAction(
            MainWindow)
        self.actionFill_problematic_columns_with.setObjectName(
            "actionFill_problematic_columns_with")
        self.actionadd = QtWidgets.QAction(MainWindow)
        self.actionadd.setObjectName("actionadd")
        self.actionradd = QtWidgets.QAction(MainWindow)
        self.actionradd.setObjectName("actionradd")
        self.actionsub = QtWidgets.QAction(MainWindow)
        self.actionsub.setObjectName("actionsub")
        self.actionrsub = QtWidgets.QAction(MainWindow)
        self.actionrsub.setObjectName("actionrsub")
        self.actiondiv = QtWidgets.QAction(MainWindow)
        self.actiondiv.setObjectName("actiondiv")
        self.actionrdiv = QtWidgets.QAction(MainWindow)
        self.actionrdiv.setObjectName("actionrdiv")
        self.actionfloordiv = QtWidgets.QAction(MainWindow)
        self.actionfloordiv.setObjectName("actionfloordiv")
        self.actionrfloordiv = QtWidgets.QAction(MainWindow)
        self.actionrfloordiv.setObjectName("actionrfloordiv")
        self.actionpow = QtWidgets.QAction(MainWindow)
        self.actionpow.setObjectName("actionpow")
        self.actionrpow = QtWidgets.QAction(MainWindow)
        self.actionrpow.setObjectName("actionrpow")
        self.actionForced_type_Conversion = QtWidgets.QAction(MainWindow)
        self.actionForced_type_Conversion.setObjectName(
            "actionForced_type_Conversion")
        self.actionscatter = QtWidgets.QAction(MainWindow)
        self.actionscatter.setObjectName("actionscatter")
        self.actionpie = QtWidgets.QAction(MainWindow)
        self.actionpie.setObjectName("actionpie")
        self.actionbar = QtWidgets.QAction(MainWindow)
        self.actionbar.setObjectName("actionbar")
        self.actionbarh = QtWidgets.QAction(MainWindow)
        self.actionbarh.setObjectName("actionbarh")
        self.actionhist = QtWidgets.QAction(MainWindow)
        self.actionhist.setObjectName("actionhist")
        self.actioncorr = QtWidgets.QAction(MainWindow)
        self.actioncorr.setObjectName("actioncorr")
        self.actioncov = QtWidgets.QAction(MainWindow)
        self.actioncov.setObjectName("actioncov")
        self.menuSave_as.addAction(self.actionas_a_Csv_File)
        self.menuSave_as.addSeparator()
        self.menuSave_as.addAction(self.actionas_a_Excel_file)
        self.menuFile.addAction(self.actionOpen_file)
        self.menuFile.addSeparator()
        self.menuFile.addAction(self.menuSave_as.menuAction())
        self.menuFile.addSeparator()
        self.menuFile.addAction(self.actionExit)
        self.menuQuick_operation.addAction(self.actionDelete_problematic_rows)
        self.menuQuick_operation.addSeparator()
        self.menuQuick_operation.addAction(
            self.actionDelete_problematic_columns)
        self.menuQuick_operation.addSeparator()
        self.menuQuick_operation.addAction(self.actionDelete_duplicate_values)
        self.menuQuick_operation.addSeparator()
        self.menuQuick_operation.addAction(
            self.actionFill_problematic_columns_with)
        self.menuQuick_operation.addSeparator()
        self.menuQuick_operation.addAction(self.actionForced_type_Conversion)
        self.menuQuick_operation.addSeparator()
        self.menuQuick_operation.addAction(self.actionUpdating_all_the_Windows)
        self.menuSelect.addAction(self.actionread_only)
        self.menuSelect.addSeparator()
        self.menuSelect.addAction(self.actioninplace)
        self.menuMatplotlib.addAction(self.actionplot)
        self.menuMatplotlib.addSeparator()
        self.menuMatplotlib.addAction(self.actionscatter)
        self.menuMatplotlib.addSeparator()
        self.menuMatplotlib.addAction(self.actionpie)
        self.menuMatplotlib.addSeparator()
        self.menuMatplotlib.addAction(self.actionbar)
        self.menuMatplotlib.addSeparator()
        self.menuMatplotlib.addAction(self.actionbarh)
        self.menuMatplotlib.addSeparator()
        self.menuMatplotlib.addAction(self.actionhist)
        self.menuMatplotlib.addSeparator()
        self.menuScientific_computation.addAction(self.actionadd)
        self.menuScientific_computation.addSeparator()
        self.menuScientific_computation.addAction(self.actionradd)
        self.menuScientific_computation.addSeparator()
        self.menuScientific_computation.addAction(self.actionsub)
        self.menuScientific_computation.addSeparator()
        self.menuScientific_computation.addAction(self.actionrsub)
        self.menuScientific_computation.addSeparator()
        self.menuScientific_computation.addAction(self.actiondiv)
        self.menuScientific_computation.addSeparator()
        self.menuScientific_computation.addAction(self.actionrdiv)
        self.menuScientific_computation.addSeparator()
        self.menuScientific_computation.addAction(self.actionfloordiv)
        self.menuScientific_computation.addSeparator()
        self.menuScientific_computation.addAction(self.actionrfloordiv)
        self.menuScientific_computation.addSeparator()
        self.menuScientific_computation.addAction(self.actionpow)
        self.menuScientific_computation.addSeparator()
        self.menuScientific_computation.addAction(self.actionrpow)
        self.menuScientific_computation.addSeparator()
        self.menuScientific_computation.addAction(self.actioncorr)
        self.menuScientific_computation.addSeparator()
        self.menuScientific_computation.addAction(self.actioncov)
        self.menuScientific_computation.addSeparator()
        self.menubar.addAction(self.menuFile.menuAction())
        self.menubar.addAction(self.menuQuick_operation.menuAction())
        self.menubar.addAction(self.menuSelect.menuAction())
        self.menubar.addAction(self.menuScientific_computation.menuAction())
        self.menubar.addAction(self.menuMatplotlib.menuAction())

        self.retranslateUi(MainWindow)
        QtCore.QMetaObject.connectSlotsByName(MainWindow)