diff --git a/Docs/ChangeLog.md b/Docs/ChangeLog.md index 99ff243..0af3676 100644 --- a/Docs/ChangeLog.md +++ b/Docs/ChangeLog.md @@ -1,3 +1,23 @@ +# Version: 1.109.2 +## Date: 2024-07-23 +### Changes: +- Fix: Fixef the bug of data preprossing, when the 'sum' method was selected for normalization, the program will raise error. + + +# Version: 1.109.1 +## Date: 2024-07-23 +### Changes: +- New: Added a function to plot the heatmap of the correlation of the taxa, functions, taxa-functions items. +- Fix: Fixed a bug of when plot the taxa-functions network. +- Change: Changed the sankey plot for intensity, split samples to different groups to show. + + +# Version: 1.109.0 +## Date: 2024-07-22 +### Changes: +- Change: Changed the layout of the main window to make the GUI more user-friendly and clear. + + # Version: 1.108.7 ## Date: 2024-07-14 ### Changes: diff --git a/Docs/MetaX_Cookbook.assets/add_a_list.png b/Docs/MetaX_Cookbook.assets/add_a_list.png index 7083697..e35a213 100644 Binary files a/Docs/MetaX_Cookbook.assets/add_a_list.png and b/Docs/MetaX_Cookbook.assets/add_a_list.png differ diff --git a/Docs/MetaX_Cookbook.assets/add_to_list.png b/Docs/MetaX_Cookbook.assets/add_to_list.png index 4de8d70..3841cea 100644 Binary files a/Docs/MetaX_Cookbook.assets/add_to_list.png and b/Docs/MetaX_Cookbook.assets/add_to_list.png differ diff --git a/Docs/MetaX_Cookbook.assets/anova_test.png b/Docs/MetaX_Cookbook.assets/anova_test.png index 0d5b9c9..231976a 100644 Binary files a/Docs/MetaX_Cookbook.assets/anova_test.png and b/Docs/MetaX_Cookbook.assets/anova_test.png differ diff --git a/Docs/MetaX_Cookbook.assets/basic_setting.png b/Docs/MetaX_Cookbook.assets/basic_setting.png index 3e78b56..4d1a6f8 100644 Binary files a/Docs/MetaX_Cookbook.assets/basic_setting.png and b/Docs/MetaX_Cookbook.assets/basic_setting.png differ diff --git a/Docs/MetaX_Cookbook.assets/basic_stats_bar_3d_setting.png b/Docs/MetaX_Cookbook.assets/basic_stats_bar_3d_setting.png deleted file mode 100644 index 3413d54..0000000 Binary files a/Docs/MetaX_Cookbook.assets/basic_stats_bar_3d_setting.png and /dev/null differ diff --git a/Docs/MetaX_Cookbook.assets/basic_stats_heatmap.png b/Docs/MetaX_Cookbook.assets/basic_stats_heatmap.png index 598dd4e..b717a61 100644 Binary files a/Docs/MetaX_Cookbook.assets/basic_stats_heatmap.png and b/Docs/MetaX_Cookbook.assets/basic_stats_heatmap.png differ diff --git a/Docs/MetaX_Cookbook.assets/basic_stats_heatmap_seeting.png b/Docs/MetaX_Cookbook.assets/basic_stats_heatmap_seeting.png index f56dc4b..5b6f8a8 100644 Binary files a/Docs/MetaX_Cookbook.assets/basic_stats_heatmap_seeting.png and b/Docs/MetaX_Cookbook.assets/basic_stats_heatmap_seeting.png differ diff --git a/Docs/MetaX_Cookbook.assets/basic_stats_pca.png b/Docs/MetaX_Cookbook.assets/basic_stats_pca.png index a979c7d..9e1f23c 100644 Binary files a/Docs/MetaX_Cookbook.assets/basic_stats_pca.png and b/Docs/MetaX_Cookbook.assets/basic_stats_pca.png differ diff --git a/Docs/MetaX_Cookbook.assets/co_network_focus.png b/Docs/MetaX_Cookbook.assets/co_network_focus.png index 17518c7..7c2235a 100644 Binary files a/Docs/MetaX_Cookbook.assets/co_network_focus.png and b/Docs/MetaX_Cookbook.assets/co_network_focus.png differ diff --git a/Docs/MetaX_Cookbook.assets/co_network_page.png b/Docs/MetaX_Cookbook.assets/co_network_page.png index 0a7d693..5282a04 100644 Binary files a/Docs/MetaX_Cookbook.assets/co_network_page.png and b/Docs/MetaX_Cookbook.assets/co_network_page.png differ diff --git a/Docs/MetaX_Cookbook.assets/co_network_setting.png b/Docs/MetaX_Cookbook.assets/co_network_setting.png index 0fd82ee..c5f35cd 100644 Binary files a/Docs/MetaX_Cookbook.assets/co_network_setting.png and b/Docs/MetaX_Cookbook.assets/co_network_setting.png differ diff --git a/Docs/MetaX_Cookbook.assets/corss_heatmap_setting.png b/Docs/MetaX_Cookbook.assets/corss_heatmap_setting.png index 4f2357e..fb68f1e 100644 Binary files a/Docs/MetaX_Cookbook.assets/corss_heatmap_setting.png and b/Docs/MetaX_Cookbook.assets/corss_heatmap_setting.png differ diff --git a/Docs/MetaX_Cookbook.assets/deseq2.png b/Docs/MetaX_Cookbook.assets/deseq2.png index e4b2683..19b3c0a 100644 Binary files a/Docs/MetaX_Cookbook.assets/deseq2.png and b/Docs/MetaX_Cookbook.assets/deseq2.png differ diff --git a/Docs/MetaX_Cookbook.assets/expression_corelation_heatmap.png b/Docs/MetaX_Cookbook.assets/expression_corelation_heatmap.png new file mode 100644 index 0000000..0e537fb Binary files /dev/null and b/Docs/MetaX_Cookbook.assets/expression_corelation_heatmap.png differ diff --git a/Docs/MetaX_Cookbook.assets/group_control_test.png b/Docs/MetaX_Cookbook.assets/group_control_test.png index cfbbf3d..d125f72 100644 Binary files a/Docs/MetaX_Cookbook.assets/group_control_test.png and b/Docs/MetaX_Cookbook.assets/group_control_test.png differ diff --git a/Docs/MetaX_Cookbook.assets/group_in_condition.png b/Docs/MetaX_Cookbook.assets/group_in_condition.png index 9d6fa88..581301c 100644 Binary files a/Docs/MetaX_Cookbook.assets/group_in_condition.png and b/Docs/MetaX_Cookbook.assets/group_in_condition.png differ diff --git a/Docs/MetaX_Cookbook.assets/image-20240723162241316.png b/Docs/MetaX_Cookbook.assets/image-20240723162241316.png new file mode 100644 index 0000000..0e537fb Binary files /dev/null and b/Docs/MetaX_Cookbook.assets/image-20240723162241316.png differ diff --git a/Docs/MetaX_Cookbook.assets/main_window.png b/Docs/MetaX_Cookbook.assets/main_window.png index bf93e2a..271ba91 100644 Binary files a/Docs/MetaX_Cookbook.assets/main_window.png and b/Docs/MetaX_Cookbook.assets/main_window.png differ diff --git a/Docs/MetaX_Cookbook.assets/pca_setting.png b/Docs/MetaX_Cookbook.assets/pca_setting.png index 47cd8d6..43e7841 100644 Binary files a/Docs/MetaX_Cookbook.assets/pca_setting.png and b/Docs/MetaX_Cookbook.assets/pca_setting.png differ diff --git a/Docs/MetaX_Cookbook.assets/peptide_query.png b/Docs/MetaX_Cookbook.assets/peptide_query.png index c351bd9..3245d0a 100644 Binary files a/Docs/MetaX_Cookbook.assets/peptide_query.png and b/Docs/MetaX_Cookbook.assets/peptide_query.png differ diff --git a/Docs/MetaX_Cookbook.assets/right_click_theme.png b/Docs/MetaX_Cookbook.assets/right_click_theme.png index 08650d6..f205d90 100644 Binary files a/Docs/MetaX_Cookbook.assets/right_click_theme.png and b/Docs/MetaX_Cookbook.assets/right_click_theme.png differ diff --git a/Docs/MetaX_Cookbook.assets/sub_meta.png b/Docs/MetaX_Cookbook.assets/sub_meta.png new file mode 100644 index 0000000..9df3005 Binary files /dev/null and b/Docs/MetaX_Cookbook.assets/sub_meta.png differ diff --git a/Docs/MetaX_Cookbook.assets/t_test.png b/Docs/MetaX_Cookbook.assets/t_test.png index e539717..e0b8c76 100644 Binary files a/Docs/MetaX_Cookbook.assets/t_test.png and b/Docs/MetaX_Cookbook.assets/t_test.png differ diff --git a/Docs/MetaX_Cookbook.assets/t_test_res.png b/Docs/MetaX_Cookbook.assets/t_test_res.png index 54d6961..9b5c6bd 100644 Binary files a/Docs/MetaX_Cookbook.assets/t_test_res.png and b/Docs/MetaX_Cookbook.assets/t_test_res.png differ diff --git a/Docs/MetaX_Cookbook.assets/taxa_func_link_net_settings.png b/Docs/MetaX_Cookbook.assets/taxa_func_link_net_settings.png new file mode 100644 index 0000000..182af48 Binary files /dev/null and b/Docs/MetaX_Cookbook.assets/taxa_func_link_net_settings.png differ diff --git a/Docs/MetaX_Cookbook.assets/taxa_func_link_page.png b/Docs/MetaX_Cookbook.assets/taxa_func_link_page.png index 6d82391..c32879b 100644 Binary files a/Docs/MetaX_Cookbook.assets/taxa_func_link_page.png and b/Docs/MetaX_Cookbook.assets/taxa_func_link_page.png differ diff --git a/Docs/MetaX_Cookbook.assets/taxa_func_link_page2.png b/Docs/MetaX_Cookbook.assets/taxa_func_link_page2.png index e595486..11adcde 100644 Binary files a/Docs/MetaX_Cookbook.assets/taxa_func_link_page2.png and b/Docs/MetaX_Cookbook.assets/taxa_func_link_page2.png differ diff --git a/Docs/MetaX_Cookbook.assets/taxa_func_linked_only.png b/Docs/MetaX_Cookbook.assets/taxa_func_linked_only.png index 0dadd6b..55c8aca 100644 Binary files a/Docs/MetaX_Cookbook.assets/taxa_func_linked_only.png and b/Docs/MetaX_Cookbook.assets/taxa_func_linked_only.png differ diff --git a/Docs/MetaX_Cookbook.assets/taxa_func_sankey.png b/Docs/MetaX_Cookbook.assets/taxa_func_sankey.png index 98ff7df..b43bbec 100644 Binary files a/Docs/MetaX_Cookbook.assets/taxa_func_sankey.png and b/Docs/MetaX_Cookbook.assets/taxa_func_sankey.png differ diff --git a/Docs/MetaX_Cookbook.assets/tools_menu.png b/Docs/MetaX_Cookbook.assets/tools_menu.png index 0975369..20450bf 100644 Binary files a/Docs/MetaX_Cookbook.assets/tools_menu.png and b/Docs/MetaX_Cookbook.assets/tools_menu.png differ diff --git a/Docs/MetaX_Cookbook.assets/trends_cluster_setting.png b/Docs/MetaX_Cookbook.assets/trends_cluster_setting.png index d852fcb..f0ae933 100644 Binary files a/Docs/MetaX_Cookbook.assets/trends_cluster_setting.png and b/Docs/MetaX_Cookbook.assets/trends_cluster_setting.png differ diff --git a/Docs/MetaX_Cookbook.assets/trends_page.png b/Docs/MetaX_Cookbook.assets/trends_page.png index 850b188..29e2d4f 100644 Binary files a/Docs/MetaX_Cookbook.assets/trends_page.png and b/Docs/MetaX_Cookbook.assets/trends_page.png differ diff --git a/Docs/MetaX_Cookbook.assets/tukey_test.png b/Docs/MetaX_Cookbook.assets/tukey_test.png index a394913..c5caecd 100644 Binary files a/Docs/MetaX_Cookbook.assets/tukey_test.png and b/Docs/MetaX_Cookbook.assets/tukey_test.png differ diff --git a/Docs/MetaX_Cookbook.assets/volcano.png b/Docs/MetaX_Cookbook.assets/volcano.png index 367782c..cfa64c7 100644 Binary files a/Docs/MetaX_Cookbook.assets/volcano.png and b/Docs/MetaX_Cookbook.assets/volcano.png differ diff --git a/Docs/MetaX_Cookbook.md b/Docs/MetaX_Cookbook.md index 4be79e3..cfd0dae 100644 --- a/Docs/MetaX_Cookbook.md +++ b/Docs/MetaX_Cookbook.md @@ -328,7 +328,7 @@ Then we can check tables in **Table Review** part, and export it. ### PCA, Correlation and Box Plot -basic_stats_pca +basic_stats_pca We can select **meta** **groups** or **samples** (default all) to plot **PCA**, **Correlation**, and **Box Plot** for **[Taxa, Function, Taxa-Func, Peptide table, Protein table**] @@ -346,7 +346,11 @@ We can select **meta** **groups** or **samples** (default a - Select **Sub Meta** to plot with two meta - - ![basic_setting](MetaX_Cookbook.assets/basic_setting.png) + - sub_meta + + - Change settings in the **PLOT PARAMETER** tab + + - basic_setting @@ -360,7 +364,7 @@ We can select **meta** **groups** or **samples** (default a - image-20230728113359732 - - ![image-20230728112519665](./MetaX_Cookbook.assets/right_cilck_menu.png) + - image-20230728112747731 @@ -438,7 +442,7 @@ We can select **meta** **groups** or **samples** (default a - Plot all color maps to view by right click **Theme** - ![right_click_theme](MetaX_Cookbook.assets/right_click_theme.png) - - all_cmap + - all_cmap - **Plot:** @@ -469,8 +473,6 @@ We can select **meta** **groups** or **samples** (default a - 3D Bar plot - Plot 3D bar by selecting a **sub meta**. - - ![basic_stats_bar_3d_setting](MetaX_Cookbook.assets/basic_stats_bar_3d_setting.png) - - basic_stats_bar_3d @@ -493,13 +495,13 @@ We can select **meta** **groups** or **samples** (default a - Select 2 group stats T-Test for **[Taxa, Function, Taxa-Func, Peptide table and Proteins Table**] -t_test +t_test ### ANOVA-TEST - select some groups or all groups to ANOVA Test for **[Taxa, Function, Taxa-Func and Peptide table**] -anova_test +anova_test ### Significant Taxa-Func @@ -510,7 +512,7 @@ We can select **meta** **groups** or **samples** (default a - The **result** of the T-test and ANOVA Test will show in a new window - t_test_res + t_test_res @@ -520,6 +522,7 @@ We can select **meta** **groups** or **samples** (default a corss_heatmap_setting +- - Taxa-Func cross heatmap: - The orange cells mean in the corresponding function ( X-axis) and Taxa( Y-axis) are significantly different between groups. @@ -535,14 +538,53 @@ We can select **meta** **groups** or **samples** (default a - The colored tiles represent the taxa which were not significantly different between groups but the related functions were. +### Group-Control TEST + +- **Dunnett's Test** + + Set a Group as **"Control"**, then compare all groups to Control + + - **Comparing in Each Condition:** Select a meta such as individual, then compare groups to control in each individual. + +- **DESeq2 Test** + Bingo! You noticed the hidden function of MetaX, click **Help -> About -> Like** 3 times to unlock the function to compare all groups to control. + + + - ![group_control_test](./MetaX_Cookbook.assets/group_control_test.png) + - Result of Dunnett's Test: + - T- Statistic value shown in the heatmap + - dunnetts_heatmap +### DESeq2 + +- Select two groups to calculate FoldChange by [PyDESeq2]: https://github.com/owkin/PyDESeq2 + + + +image-20230728123725717 + +- Select p-adjust, log2FC to plot + + (**Ultra-Up(Down):** |log2FC| > Max log2FC) + + - Volcano: + + volcano + + - Sankey: + + - The last node level is the functions linked to each Taxon (When plotting Taxa-Func) + + taxa_func_sankey + + ### TUKEY_TEST -tukey_test +tukey_test - **Select a function:** @@ -571,50 +613,17 @@ We can select **meta** **groups** or **samples** (default a tukey_plot -### Group-Control TEST - -- **Dunnett's Test** - - Set a Group as **"Control"**, then compare all groups to Control - - - **Comparing in Each Condition:** Select a meta such as individual, then compare groups to control in each individual. - - - ![group_control_test](./MetaX_Cookbook.assets/group_control_test.png) - - Result of Dunnett's Test: - - T- Statistic value shown in the heatmap - - dunnetts_heatmap - - - -## 6. Differential Analysis -### Fold Change Calculation -- Select two groups to calculate FoldChange by [PyDESeq2]: https://github.com/owkin/PyDESeq2 - -image-20230728123725717 +## 6. Expression Analysis -- Select p-adjust, log2FC to plot - - (**Ultra-Up(Down):** |log2FC| > Max log2FC) - - - Volcano: - - volcano - - - Sankey: - - - The last node level is the functions linked to each Taxon (When plotting Taxa-Func) - - taxa_func_sankey - -### Co-Expression Networks +### Co-Expression Networks & Heatmap - select Groups or Samples to calculate the correlation and plot the network -image-20230728142606826 + - Slecet table, and set the method of correlation and threshold @@ -632,13 +641,14 @@ We can select **meta** **groups** or **samples** (default a co_network_pic - +- Correlation of expression + - ![image-20240723162241316](MetaX_Cookbook.assets/expression_corelation_heatmap.png) ### Expression Trends - Add items to the list window to plot the clusters with similar trends of intensity -image-20230728143806833 + - Clusters plot (clustered by **k-means**) @@ -666,7 +676,7 @@ We can select **meta** **groups** or **samples** (default a ### Taxa-Func Link Plot -image-20230728150309898 + - Check all taxa in one function (or Check all functions in a taxon) @@ -710,11 +720,13 @@ We can select **meta** **groups** or **samples** (default a - Select some groups or samples (default all) - add some taxa, func or taxa-func to focus the window (Optional) -image-20230728145518517 + - Plot list only - - Checked the "**Plot List Only**" to show the items only in the list - + - **Plot List Only:** Show the items only in the list and the items linked to them + - **Without Links:** Only show the items in the focus list + - + - Network plot - The yellow dots are taxa, and the grey dots are functions, the size of the dots presents the intensity - The red dots are the taxa we focused on diff --git a/metax/gui/main_gui.py b/metax/gui/main_gui.py index af7db82..2af7eac 100644 --- a/metax/gui/main_gui.py +++ b/metax/gui/main_gui.py @@ -43,6 +43,7 @@ from PyQt5.QtWidgets import QDialog, QVBoxLayout, QTextBrowser from PyQt5.QtGui import QIcon from PyQt5.QtCore import Qt, QTimer, QDir, QSettings +from PyQt5.QtWidgets import QToolBox import qtawesome as qta # from qt_material import apply_stylesheet @@ -429,8 +430,9 @@ def __init__(self, MainWindow): self.pushButton_deseq2_plot_vocano.clicked.connect(self.plot_deseq2_volcano) self.pushButton_deseq2_plot_sankey.clicked.connect(self.deseq2_plot_sankey) - # ### Co-Expression Network - self.pushButton_co_expr_plot.clicked.connect(self.plot_co_expr_network) + # ### Co-Expression + self.pushButton_co_expr_plot.clicked.connect(lambda: self.plot_co_expr('network')) + self.pushButton_co_expr_heatmap_plot.clicked.connect(lambda: self.plot_co_expr('heatmap')) self.comboBox_co_expr_table.currentIndexChanged.connect(self.update_co_expr_select_list) self.pushButton_co_expr_add_to_list.clicked.connect(self.add_co_expr_to_list) self.pushButton_co_expr_drop_item.clicked.connect(self.drop_co_expr_list) @@ -841,7 +843,6 @@ def change_theme(self, theme, silent=False): QGroupBox {{ text-transform: none; margin: 0px; - padding: 10px 0px 10px 0px; }} QTabBar {{ text-transform: none; @@ -851,21 +852,51 @@ def change_theme(self, theme, silent=False): }} QHeaderView::section {{ text-transform: none; - padding: 5px; }} - QPushButton {{ - text-transform: none; + QLineEdit {{ + font-size: 12px; }} QLabel {{ - font-size: 13px; + font-size: 12px; }} QComboBox {{ - font-size: 13px; + font-size: 12px; + height: 20px; + }} + QSpinBox {{ + font-size: 12px; + height: 20px; + }} + QListWidget {{ + font-size: 12px; + }} + QDoubleSpinBox {{ + font-size: 12px; + height: 20px; + }} + QCheckBox {{ + font-size: 12px; + height: 20px; + }} + QRadioButton {{ + font-size: 12px; + height: 20px; }} QToolBox {{ - font-size: 14px; + font-size: 12px; font-weight: bold; }} + QPushButton {{ + text-transform: none; + color: {QTMATERIAL_PRIMARYCOLOR}; + background-color: {QTMATERIAL_SECONDARYCOLOR}; + border: 1px solid {QTMATERIAL_PRIMARYCOLOR}; + border-radius: 2px; + font-size: 12px; + padding: 5px; + margin: 2px; + height: 20px; + }} ''' current_app = QtWidgets.QApplication.instance() @@ -941,6 +972,11 @@ def set_default_tab_index(self): for widget in tab_widget: widget.setCurrentIndex(0) + # Set default current index as 0 for all ToolBox + toolbox_widgets = self.MainWindow.findChildren(QtWidgets.QToolBox) + for toolbox in toolbox_widgets: + toolbox.setCurrentIndex(0) + def update_outlier_detection(self): if self.comboBox_outlier_detection.currentText() == "None": self.comboBox_outlier_handling_method1.setEnabled(False) @@ -1410,42 +1446,50 @@ def swith_stack_page_db_update(self): # self.stackedWidget.setCurrentIndex(3) def cross_test_tab_change(self, index): - if index == 2: #TUKEY - self.hide_all_in_layout(self.gridLayout_top_heatmap_plot) + if index in [3, 4]: # TUKEY Test or DESeq2 Test + # self.hide_all_in_layout(self.gridLayout_top_heatmap_plot) + self.hide_all_in_layout(self.toolBox_9) else: - self.show_all_in_layout(self.gridLayout_top_heatmap_plot) + self.show_all_in_layout(self.toolBox_9) - if index == 3: + if index == 2: # Group Control Test self.hide_all_in_layout(self.gridLayout_38) else: self.show_all_in_layout(self.gridLayout_38) + def hide_all_in_layout(self, layout): - for i in range(layout.count()): - layout_item = layout.itemAt(i) - if layout_item.widget() is not None: - # 隐藏小部件 - layout_item.widget().hide() - elif layout_item.layout() is not None: - # 递归隐藏嵌套布局中的元素 - self.hide_all_in_layout(layout_item.layout()) + if isinstance(layout, QToolBox): + # For QToolBox + layout.hide() + else: + # For other types of layout + for i in range(layout.count()): + layout_item = layout.itemAt(i) + if layout_item.widget() is not None: + layout_item.widget().hide() + elif layout_item.layout() is not None: + self.hide_all_in_layout(layout_item.layout()) def show_all_in_layout(self, layout, if_except=True): except_list = ['doubleSpinBox_mini_log2fc_heatmap', 'label_138', - 'comboBox_cross_3_level_plot_df_type','label_141', - 'checkBox_cross_3_level_plot_remove_zero_col', - 'label_139','doubleSpinBox_max_log2fc_heatmap'] if if_except else [] - - for i in range(layout.count()): - layout_item = layout.itemAt(i) - if layout_item.widget() is not None: - if layout_item.widget().objectName() not in except_list: - # 显示小部件 - layout_item.widget().show() - elif layout_item.layout() is not None: - # 递归显示嵌套布局中的元素 - self.show_all_in_layout(layout_item.layout(), if_except=if_except) + 'comboBox_cross_3_level_plot_df_type', 'label_141', + 'checkBox_cross_3_level_plot_remove_zero_col', 'label_139', + 'doubleSpinBox_max_log2fc_heatmap'] if if_except else [] + + if isinstance(layout, QToolBox): + # For QToolBox + layout.show() + else: + # For other types of layout + for i in range(layout.count()): + layout_item = layout.itemAt(i) + if layout_item.widget() is not None: + if layout_item.widget().objectName() not in except_list: + layout_item.widget().show() + elif layout_item.layout() is not None: + self.show_all_in_layout(layout_item.layout(), if_except=if_except) def add_theme_to_combobox(self): @@ -1454,7 +1498,7 @@ def add_theme_to_combobox(self): cmap_list = ['Auto'] + sorted(list(colormaps)) - cmap_combox_list = ['comboBox_basic_hetatmap_theme', 'comboBox_tflink_cmap', 'comboBox_top_heatmap_cmap'] + cmap_combox_list = ['comboBox_basic_corr_cmap','comboBox_basic_hetatmap_theme', 'comboBox_tflink_cmap', 'comboBox_top_heatmap_cmap', 'comboBox_corr_hetatmap_cmap'] for name in cmap_combox_list: old_combobox = getattr(self, name) new_combobox = CmapComboBox(old_combobox.parent()) @@ -2501,10 +2545,21 @@ def set_multi_table(self, restore_taxafunc=False, saved_obj=None): if normalize_method != 'None' or transform_method != 'None': - transform_dict = {'None': None, 'Log 2 transformation': 'log2', 'Log 10 transformation': 'log10', - 'Square root transformation': 'sqrt', 'Cube root transformation': 'cube'} - normalize_dict = {'None': None, 'Mean centering': 'mean','Standard Scaling (Z-Score)' : 'zscore', - 'Min-Max Scaling': 'minmax', 'Pareto Scaling': 'pareto'} + transform_dict = { + "None": None, + "Log 2 transformation": "log2", + "Log 10 transformation": "log10", + "Square root transformation": "sqrt", + "Cube root transformation": "cube", + } + normalize_dict = { + "None": None, + "Mean centering": "mean", + "Standard Scaling (Z-Score)": "zscore", + "Min-Max Scaling": "minmax", + "Pareto Scaling": "pareto", + "Normalization by sum": "sum", + } normalize_method = normalize_dict[normalize_method] transform_method = transform_dict[transform_method] @@ -2939,6 +2994,7 @@ def enable_multi_button(self, state=True): self.pushButton_basic_heatmap_sankey_plot, self.pushButton_basic_heatmap_add_top, self.pushButton_co_expr_plot, + self.pushButton_co_expr_heatmap_plot, self.comboBox_co_expr_table, self.comboBox_basic_table, self.pushButton_co_expr_add_to_list, @@ -3378,7 +3434,8 @@ def plot_basic_list(self, plot_type='heatmap'): rename_sample = self.checkBox_basic_hetatmap_rename_sample_name.isChecked() show_all_labels = (self.checkBox_basic_hetatmap_show_all_labels_x.isChecked(), self.checkBox_basic_hetatmap_show_all_labels_y.isChecked()) plot_mean = self.checkBox_basic_heatmap_plot_mean.isChecked() - + sub_meta = self.comboBox_3dbar_sub_meta.currentText() + table_name = self.comboBox_basic_table.currentText() if cmap == 'Auto': @@ -3492,7 +3549,7 @@ def plot_basic_list(self, plot_type='heatmap'): scale=scale, row_cluster=row_cluster, col_cluster=col_cluster, cmap=cmap, rename_taxa=rename_taxa, font_size=font_size, show_all_labels=show_all_labels, rename_sample=rename_sample, - plot_mean = plot_mean, sub_meta = self.comboBox_3dbar_sub_meta.currentText()) + plot_mean = plot_mean, sub_meta = sub_meta) elif plot_type == 'bar': @@ -3521,14 +3578,17 @@ def plot_basic_list(self, plot_type='heatmap'): elif plot_type == 'get_table': self.show_message('Getting table...') - if plot_mean: + if plot_mean and sub_meta == 'None': # if sub_meta is not None, plot_mean is False df = self.tfa.BasicStats.get_stats_mean_df_by_group(df) + elif sub_meta != 'None': + df, _ = self.tfa.BasicStats.get_combined_sub_meta_df(df=df, sub_meta=sub_meta, rename_sample=rename_sample, plot_mean=plot_mean) else: - if rename_taxa: - df = self.tfa.rename_taxa(df) if rename_sample: df = self.tfa.rename_sample(df) + if rename_taxa: + df = self.tfa.rename_taxa(df) + self.show_table(df=df, title=title) elif plot_type == 'sankey': @@ -3542,12 +3602,13 @@ def plot_basic_list(self, plot_type='heatmap'): self.show_message('Plotting Sankey...') if self.checkBox_basic_heatmap_sankey_title.isChecked(): title_new = title - subtitle = sample_list + subtitle = str(sample_list) else: title_new = '' subtitle = '' pic = SankeyPlot(self.tfa, theme=self.html_theme).plot_intensity_sankey(df=df, width=width, height=height, title=title_new, subtitle=subtitle, font_size=font_size, + sub_meta=sub_meta, plot_mean=plot_mean, show_legend=self.checkBox_basic_bar_show_legend.isChecked()) self.save_and_show_js_plot(pic, title) @@ -4160,6 +4221,7 @@ def get_title_by_table_name(self, table_name): elif method == 'corr': cluster = self.checkBox_corr_cluster.isChecked() show_all_labels = (self.checkBox_corr_show_all_labels_x.isChecked(), self.checkBox_corr_show_all_labels_y.isChecked()) + cmap = self.comboBox_basic_corr_cmap.currentText() # checek if the dataframe has at least 2 rows and 2 columns if df.shape[0] < 2 or df.shape[1] < 2: QMessageBox.warning(self.MainWindow, 'Warning', 'The number of rows or columns is less than 2, correlation cannot be plotted!') @@ -4170,7 +4232,7 @@ def get_title_by_table_name(self, table_name): self.show_message('Correlation is running, please wait...') BasicPlot(self.tfa).plot_corr_sns(df=df, title_name=title_name, cluster= cluster, width=width, height=height, font_size=font_size, - show_all_labels=show_all_labels, theme=theme, + show_all_labels=show_all_labels, theme=theme, cmap=cmap, rename_sample = rename_sample, **self.heatmap_params_dict) elif method == 'alpha_div': @@ -4229,7 +4291,7 @@ def get_title_by_table_name(self, table_name): title = 'Sankey of Taxa' if table_name == 'Taxa' else 'Sankey of Taxa-Functions' pic = SankeyPlot(self.tfa, theme=self.html_theme).plot_intensity_sankey(df=df, width=width, height=height, - font_size = font_size, title='', subtitle='') + font_size = font_size, title='', subtitle='', sub_meta=sub_meta) self.save_and_show_js_plot(pic, title) elif method == 'num_bar': @@ -4912,7 +4974,10 @@ def plot_deseq2_volcano(self): QMessageBox.warning(self.MainWindow, 'Error', f'{error_message} \n\nPlease check your input!') return None - def plot_co_expr_network(self): + def plot_co_expr(self, plot_type = 'network'): + ''' + plot_type: network or heatmap + ''' df_type = self.comboBox_co_expr_table.currentText().lower() corr_method = self.comboBox_co_expr_corr_method.currentText() corr_threshold = self.doubleSpinBox_co_expr_corr_threshold.value() @@ -4945,27 +5010,60 @@ def plot_co_expr_network(self): return None - try: - self.show_message('Co-expression network is plotting...\n\n It may take a long time! Please wait...') - pic = NetworkPlot(self.tfa, - show_labels=show_labels, - rename_taxa=rename_taxa, - font_size=font_size, - theme=self.html_theme, - **self.tf_link_net_params_dict - ).plot_co_expression_network(df_type= df_type, corr_method=corr_method, - corr_threshold=corr_threshold, sample_list=sample_list, width=width, height=height, focus_list=focus_list, plot_list_only=plot_list_only) - self.save_and_show_js_plot(pic, 'co-expression network') - except ValueError as e: - if 'sample_list should have at least 2' in str(e): - QMessageBox.warning(self.MainWindow, 'Error', "At least 2 samples are required!") - except Exception as e: - error_message = traceback.format_exc() - self.logger.write_log(f'plot_co_expr_network error: {error_message}', 'e') - self.logger.write_log(f'plot_co_expr_network: df_type: {df_type}, corr_method: {corr_method}, corr_threshold: {corr_threshold}, width: {width}, height: {height}, focus_list: {focus_list}', 'e') - QMessageBox.warning(self.MainWindow, 'Error', f'{error_message} \n\nPlease check your input!') - return None - + if plot_type == 'heatmap': + self.show_message('Co-expression heatmap is plotting...\n\n It may take a long time! Please wait...') + try: + print(f'Calculate correlation with {corr_method} method...') + df = self.tfa.BasicStats.get_correlation(df_type = df_type, sample_list = sample_list, focus_list = focus_list, plot_list_only = plot_list_only, rename_taxa = rename_taxa, method=corr_method) + # save df to table_dict + self.update_table_dict(f'expression correlation heatmap({df_type})', df) + + show_all_labels = ( + self.checkBox_corr_hetatmap_show_all_labels_x.isChecked(), + self.checkBox_corr_hetatmap_show_all_labels_y.isChecked(), + ) + cmap = self.comboBox_corr_hetatmap_cmap.currentText() + BasicPlot(self.tfa).plot_items_corr_heatmap(df=df, + title_name=f'Expression Correlation Heatmap({df_type})', + cluster=True, + cmap=cmap, + width=width, height=height, + font_size=font_size, + show_all_labels=show_all_labels, + **self.heatmap_params_dict) + + except Exception as e: + error_message = traceback.format_exc() + self.logger.write_log(f'plot_co_expr_heatmap error: {error_message}', 'e') + self.logger.write_log(f'plot_co_expr_heatmap: df_type: {df_type}, corr_method: {corr_method}, corr_threshold: {corr_threshold}, width: {width}, height: {height}, focus_list: {focus_list}', 'e') + QMessageBox.warning(self.MainWindow, 'Error', f'{error_message} \n\nPlease check your input!') + return None + + + elif plot_type == 'network': + try: + self.show_message('Co-expression network is plotting...\n\n It may take a long time! Please wait...') + pic = NetworkPlot(self.tfa, + show_labels=show_labels, + rename_taxa=rename_taxa, + font_size=font_size, + theme=self.html_theme, + **self.tf_link_net_params_dict + ).plot_co_expression_network(df_type= df_type, corr_method=corr_method, + corr_threshold=corr_threshold, sample_list=sample_list, width=width, height=height, focus_list=focus_list, plot_list_only=plot_list_only) + self.save_and_show_js_plot(pic, 'co-expression network') + except ValueError as e: + if 'sample_list should have at least 2' in str(e): + QMessageBox.warning(self.MainWindow, 'Error', "At least 2 samples are required!") + except Exception as e: + error_message = traceback.format_exc() + self.logger.write_log(f'plot_co_expr_network error: {error_message}', 'e') + self.logger.write_log(f'plot_co_expr_network: df_type: {df_type}, corr_method: {corr_method}, corr_threshold: {corr_threshold}, width: {width}, height: {height}, focus_list: {focus_list}', 'e') + QMessageBox.warning(self.MainWindow, 'Error', f'{error_message} \n\nPlease check your input!') + return None + else: + raise ValueError(f'No such plot_type: {plot_type}') + #Sankey def deseq2_plot_sankey(self): @@ -5397,10 +5495,10 @@ def delete_zero_rows(self, dataframe): # use InputWindow to show the deleted rows self.input_window = InputWindow(self.MainWindow) self.input_window.setWindowTitle('Warning') - self.input_window.text_edit.setText(f'[{len(zero_rows)}] rows are all 0, so they are deleted!\nDeleted rows: \n{row_str}\n\nIf you want to keep them, please uncheck the [cluster] checkbox or change a [scale method]!') + self.input_window.text_edit.setText(f'[{len(zero_rows)}] rows are all 0, so they are deleted!\nIf you want to keep them, please uncheck the [cluster] checkbox or change a [scale method]!\n\nDeleted rows:\n{row_str}') self.input_window.exec_() else: - QMessageBox.warning(self.MainWindow, 'Warning', f'[{len(zero_rows)}] rows are all 0, so they are deleted!\nDeleted rows: \n{row_str}\n\nIf you want to keep them, please uncheck the [cluster] checkbox or change a [scale method]!') + QMessageBox.warning(self.MainWindow, 'Warning', f'[{len(zero_rows)}] rows are all 0, so they are deleted!\nIf you want to keep them, please uncheck the [cluster] checkbox or change a [scale method]!\n\nDeleted rows:\n{row_str}') return dataframe # delete all 0 columns and show a warning message including the deleted columns @@ -5415,10 +5513,10 @@ def delete_zero_columns(self, dataframe): # use InputWindow to show the deleted rows self.input_window = InputWindow(self.MainWindow) self.input_window.setWindowTitle('Warning') - self.input_window.text_edit.setText(f'[{len(zero_columns)}] columns are all 0, so they are deleted!\nDeleted columns: \n{col_str}\n\nIf you want to keep them, please uncheck the [cluster] checkbox or change a [scale method]!') + self.input_window.text_edit.setText(f'[{len(zero_columns)}] columns are all 0, so they are deleted!\nIf you want to keep them, please uncheck the [cluster] checkbox or change a [scale method]!\n\nDeleted columns:\n{col_str}') self.input_window.exec_() else: - QMessageBox.warning(self.MainWindow, 'Warning', f'[{len(zero_columns)}] columns are all 0, so they are deleted!\nDeleted columns: \n{col_str}\n\nIf you want to keep them, please uncheck the [cluster] checkbox or change a [scale method]!') + QMessageBox.warning(self.MainWindow, 'Warning', f'[{len(zero_columns)}] columns are all 0, so they are deleted!\nIf you want to keep them, please uncheck the [cluster] checkbox or change a [scale method]!\n\nDeleted columns:\n{col_str}') return dataframe # Plot Line diff --git a/metax/gui/metax_gui/main_window.ui b/metax/gui/metax_gui/main_window.ui index 858f9df..a475969 100644 --- a/metax/gui/metax_gui/main_window.ui +++ b/metax/gui/metax_gui/main_window.ui @@ -6,8 +6,8 @@ 0 0 - 1059 - 598 + 972 + 721 @@ -28,7 +28,7 @@ - + true @@ -46,7 +46,13 @@ Qt::LeftToRight - 6 + 3 + + + false + + + false @@ -239,8 +245,8 @@ 0 0 - 496 - 373 + 453 + 500 @@ -1319,6 +1325,12 @@ + + QTabWidget::North + + + QTabWidget::Triangular + 1 @@ -1329,6 +1341,29 @@ + + + + Samples + + + + + + + + 0 + 0 + + + + Groups + + + true + + + @@ -1358,6 +1393,13 @@ + + + + Qt::Horizontal + + + @@ -1418,7 +1460,7 @@ Meta - Qt::AlignCenter + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter @@ -1437,221 +1479,19 @@ - - - - Samples - - - - - - - Qt::Horizontal - - - - - - - - 0 - 0 - - - - Groups - - - true - - - - - - - - - - - - 0 - 0 - - - - Plot Param - - - - - - - - - true - - - - 0 - 0 - - - - Add group name to Sample names - - - - - - Rename Samples - - - true - - - - - - - - 0 - 0 - - - - Show label text in diagram - - - Qt::LeftToRight - - - Show Labels - - - - - - - false - - - - 0 - 0 - - - - Adjust label text to reduce overlap - - - Adjust Labels - - - - - - - - - - - - 0 - 0 - - - - Width - - - Qt::AlignCenter - - - - - - - - 0 - 0 - - - - 1 - - - 10 - - - - - - - - 0 - 0 - - - - Height - - - Qt::AlignCenter - - - - - - - - 0 - 0 - - - - 1 - - - 8 - - - - - - - The number of columns in the legend, set 0 to hide - - - Legend Cols - - - Qt::AlignCenter - - - - - - - 0 - - - 1 - - - - - - + Sub Meta + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + @@ -1669,331 +1509,566 @@ - - - - Theme - - - Qt::AlignCenter - - - - - - - false - - - - - - - - - - 0 - 0 - - - - - - - Font Size - - - Qt::AlignCenter - - - - - - - 1 - - - 999 - - - 10 + + + + + + + 0 + 0 + + + + + 0 + 200 + + + + + 16777215 + 430 + + + + 1 + + + + + 0 + 0 + 287 + 188 + + + + Plot + + + + + + + + false + + + Correlation Heatmap + + + + + + + false + + + Bar + + + + + + + Bar of Counts + + + + + + + false + + + Box + + + + + + + false + + + Beta Diversity + + + + + + + false + + + + 0 + 0 + + + + 3D PCA + + + + + + + + 0 + 0 + + + + PCA + + + + + + + Diversity + + + + + + + false + + + Alpha Diversity + + + + + + + false + + + + 0 + 0 + + + + PCA + + + + + + + Correlation + + + + + + + false + + + TreeMap + + + + + + + false + + + Sunburst + + + + + + + Taxa Overview + + + + + + + false + + + Sankey + + + + + + + Sankey + + + + + + + + + + + 0 + 0 + 660 + 232 + + + + Plotting Parameter + + + + + + + 75 + true + + + + Box Plot - - - - - 0 - 0 - - - - Transparency of labes + + + + + 75 + true + - Transparency - - - Qt::AlignCenter + Sunburst - - - - false + + + + + + + 0 + 0 + + + + + + + Font Size + + + Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter + + + + + + + 1 + + + 999 + + + 10 + + + + + + + + + + + false + + + + 0 + 0 + + + + Adjust label text to reduce overlap + + + Adjust Labels + + + + + + + + + + 75 + true + + + general + + + + + + + + + + 0 + 0 + + + + Beta Diversity + + + Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter + + + + + + + true + + + + braycurtis + + + + + jaccard + + + + + euclidean + + + + + manhattan + + + + + canberra + + + + + chebyshev + + + + + dice + + + + + hamming + + + + + yule + + + + + + + + 0 0 - - 1.000000000000000 - - - 0.050000000000000 - - - 0.600000000000000 + + false - - - - - Dots size for PCA and Beta Diversity + - Dot Size - - - Qt::AlignCenter - - - - - - - 1 - - - 1000 - - - 10 - - - 150 + Plot Samples - - - - - - - - 6 - - - - - false - - - - 0 - 0 - - - - Plot PCA - - - - - - - - - false - - - - - - Plot Samples - - + + + + + + + 0 + 0 + + + + Width + + + Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter + + + + + + + + 0 + 0 + + + + 1 + + + 10 + + + + + + + + 0 + 0 + + + + Height + + + Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter + + + + + + + + 0 + 0 + + + + 1 + + + 8 + + + + - - - - false + + + + + + + 0 + 0 + + + + Cluster + + + true + + + + + + + + 0 + 0 + + + + Theme + + + + + + + + + + + + + 0 + 0 + - - Plot Number + + + 150 + 0 + - - - - - - - - true - - - - braycurtis - - - - - jaccard - - - - - euclidean - - - - - manhattan - - - - - canberra - - - - - chebyshev - - - - - dice - - - - - hamming - - - - - yule - - - - - - - - - 0 - 0 - - - - Beta Diversity - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter - - - - - - - Overview - - - - - - - - 0 - 0 - - - - Alpha Diversity - - - - - - - - - false + + + 75 + true + - Show All Lables for Sunburst - - - true + Correlation Heatmap - - - - false + + + + + 0 + 0 + + + + + 75 + true + - Plot Sunburst + Diversity - - - - - - - 0 - 0 - - - - PCA - - - - - - - false - - - - 0 - 0 - - - - Plot 3D PCA - - - - - - + - + 0 0 @@ -2003,200 +2078,359 @@ - - + + + + + + + 0 + 0 + + + + The number of columns in the legend, set 0 to hide + + + Legend Cols + + + Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter + + + + + + + 0 + + + 1 + + + + + + + + 0 + 0 + + + + Theme + + + Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter + + + + + + + false + + + + + + + + + Qt::Horizontal + + + + + - + 0 0 - - Plot Samples - - - - - - - false - - - Plot Box - - - - - - - - - - - Cluster - - - true - - - - - - - Show All Labels - - - - - - - X - - - - - - - Y + + + 75 + true + - - - - - - - - Number - - - - - - - false - - - Plot Corr - - - - - - - false - - - Plot Alpha Diversity - - - - - - - false - - - Plot Beta Diversity - - - - - - - Qt::Horizontal - - - - - - - Correlation - - - - - - - - Plot Samples + Bar Plot - - - - true - + + - - shannon - + + + + 0 + 0 + + + + Alpha Diversity + + - - simpson - + + + Plot Samples + + - - ace - + + + true + + + + shannon + + + + + simpson + + + + + ace + + + + + observed_otus + + + + + chao1 + + + + + fisher_alpha + + + + + dominance + + + + + menhinick + + + + + + + - - observed_otus - + + + true + + + + 0 + 0 + + + + Add group name to Sample names + + + + + + Rename Samples + + + true + + - - chao1 - + + + + 0 + 0 + + + + Show label text in diagram + + + Qt::LeftToRight + + + Show Labels + + + + + + - - fisher_alpha - + + + + 0 + 0 + + + + Transparency of labes + + + Transparency + + + Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter + + - - dominance - + + + false + + + + 0 + 0 + + + + 1.000000000000000 + + + 0.050000000000000 + + + 0.600000000000000 + + - - menhinick - + + + Dots size for PCA and Beta Diversity + + + Dot Size + + + Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter + + - + + + + 1 + + + 1000 + + + 10 + + + 150 + + + + - - - - - - - - false + + + + + + false + + + Show All Lables for Sunburst + + + true + + + + + + + + + + 0 + 0 + - Plot TreeMap + Plot Samples - - - - false + + + + + 75 + true + - Plot Sankey + Scatter Plot + + + + + + Show All Labels + + + + + + + X + + + + + + + Y + + + + + - - + + + + + + + Qt::Horizontal + + @@ -2205,103 +2439,46 @@ Heatmap and Bar - - + + + + + 0 + 0 + + - Sample + List for Plotting - - - - - - false - - - - 0 - 0 - - - - Get Table - - - - - - - false - - - - 0 - 0 - - - - Plot Sankey - - - - - - - false - - - - 0 - 0 - - - - Plot Bar - - - - - - - Sub Meta for Bar Plot - - - - - - - false - - - - 0 - 0 - - - - Plot Heatmap - - - - - - - Sub Meta - - - - + + + + false + + + + 0 + 0 + + + + Add conditionally filtered items to the drawing box + + + Add Top to List + + - - - - Qt::Vertical + + + + Sample - + @@ -2342,138 +2519,31 @@ - + - - - - List for Plotting + + + + Qt::Horizontal - - - - false - - - - 0 - 0 - - - - Add selected item to the drawing box - + + - Add to List + Select for plotting - - - - - 0 - 0 - + + + + Qt::Horizontal - - - - - - - 0 - 0 - - - - Width - - - - - - - - 0 - 0 - - - - Height - - - - - - - - 0 - 0 - - - - Label Font Size - - - - - - - - - - - 1 - - - 200 - - - 16 - - - - - - - - 0 - 0 - - - - 1 - - - 200 - - - 9 - - - - - - - 1 - - - 999 - - - 10 - - - - - - + @@ -2591,303 +2661,99 @@ - - + + - - - false - + - + 0 0 - Drop Item + Table - + false - + + 0 + 0 + + + + + Taxa + + + + + Functions + + + + + Taxa-Functions + + + + + Peptides + + + + + + + + 0 0 - Clean List + Meta - - - false - + + + + - + 0 0 - - Add a list to the drawing box, make sure there is one item per line. - - Add a list + Sub Meta - - - - - - - 0 - 0 - - - - Plotting Parameter - - - - - - - - - - - Qt::LeftToRight - - - - - - Theme - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter - - - - - - - - 0 - 0 - - - - - - - - - 0 - 0 - - - - Scale - - - - - - - - 0 - 0 - - - - - row - - - - - column - - - - - None - - - - - - - - - - - 0 - 0 - - - - Plot Peptides - - - - - + + 0 0 - - Show All Labels - - - - - - - Plot Mean - - - - - - - - 0 - 0 - - - - Rename - - - - - - - - - Row Cluster - - - true - - - - - - - Col Cluster - - - true - - - - - - - - - - 0 - 0 - - - - Only show the last level of name - - - Taxa - - - true - - - - - - - Sankey Title - - - - - - - - 0 - 0 - - - - X - - - - - - Add group name to Sample names - - - Samples - - - true - - - - - - - Y + Sub Meta for Bar Plot - - - - - - - 0 - 0 - - - - Bar Lgd - - - true - - - - - - - Bar % - - - - - - + Group @@ -2897,49 +2763,52 @@ - - + + + + false + + + + 0 + 0 + + + + Add selected item to the drawing box + - Select for plotting + Add to List - + - + 0 0 - - - - false - + + 0 0 - - Add conditionally filtered items to the drawing box - - - Add Top to List - - - - - - + + - + + + false + 0 @@ -2947,61 +2816,649 @@ - Table + Drop Item - + false - + 0 0 - - - Taxa - - - - - Functions - - - - - Taxa-Functions - - - - - Peptides - - + + Clean List + - + + + false + 0 0 + + Add a list to the drawing box, make sure there is one item per line. + - Meta + Add A List - - - + + + + + + + + 0 + 0 + + + + + 0 + 260 + + + + + 16777215 + 400 + + + + 0 + + + + + 0 + 0 + 888 + 206 + + + + Plot + + + + + + + + false + + + + 0 + 0 + + + + Get Table + + + + + + + false + + + + 0 + 0 + + + + Plot Sankey + + + + + + + false + + + + 0 + 0 + + + + Plot Bar + + + + + + + false + + + + 0 + 0 + + + + Plot Heatmap + + + + + + + + + + + 0 + 0 + 888 + 150 + + + + Plotting Parameter + + + + + + + + + + + 0 + 0 + + + + Width + + + Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter + + + + + + + + 0 + 0 + + + + 1 + + + 200 + + + 16 + + + + + + + + 0 + 0 + + + + Height + + + Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter + + + + + + + + 0 + 0 + + + + 1 + + + 200 + + + 9 + + + + + + + + + + 75 + true + + + + Bar + + + + + + + + 75 + true + + + + Sankey + + + + + + + + + + 0 + 0 + + + + Scale + + + + + + + + 0 + 0 + + + + + row + + + + + column + + + + + None + + + + + + + + + 0 + 0 + + + + Qt::LeftToRight + + + + + + Theme + + + Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter + + + + + + + + 0 + 0 + + + + + + + + + + + 0 + 0 + + + + Row Cluster + + + true + + + + + + + + 75 + true + + + + General + + + + + + + + 0 + 0 + + + + Show Legend + + + true + + + + + + + + 0 + 0 + + + + Show Title + + + + + + + + 75 + true + + + + Heatmap + + + + + + + + 0 + 0 + + + + Col Cluster + + + true + + + + + + + + 0 + 0 + + + + Plot Percentage + + + + + + + Qt::Horizontal + + + + + + + + + + 0 + 0 + + + + Plot Mean + + + + + + + + 0 + 0 + + + + Plot Peptides + + + + + + + + + + + + 0 + 0 + + + + + 100 + 0 + + + + + 100 + 16777215 + + + + Show All Labels + + + + + + + + 0 + 0 + + + + X + + + + + + + + 0 + 0 + + + + Y + + + + + + + + + + + + 0 + 0 + + + + Rename + + + + + + + + 0 + 0 + + + + Add group name to Sample names + + + Samples + + + true + + + + + + + + 0 + 0 + + + + Only show the last level of name + + + Taxa + + + true + + + + + + + + + + + + 0 + 0 + + + + + 100 + 0 + + + + + 100 + 16777215 + + + + Label Font Size + + + Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter + + + + + + + + 0 + 0 + + + + 1 + + + 999 + + + 10 + + + + + + + + + + + @@ -3057,6 +3514,9 @@ + + QTabWidget::Triangular + 3 @@ -3065,7 +3525,7 @@ T-TEST - + false @@ -3081,29 +3541,6 @@ - - - - - 0 - 0 - - - - - - - - - 0 - 0 - - - - Group 2 - - - @@ -3117,16 +3554,6 @@ - - - - - 0 - 0 - - - - @@ -3226,25 +3653,25 @@ - - - - - ANOVA TEST - - - - + + + + Qt::Horizontal + + - - - - Group by + + + + + 0 + 0 + - - + + 0 @@ -3252,26 +3679,44 @@ - Groups (Default all) + Group 2 - - + + + + + 0 + 0 + + + - - - - false + + + + Qt::Horizontal + + + + + + + ANOVA TEST + + + + - + 0 0 - Run ANOVA Test + Groups (Default all) @@ -3349,226 +3794,49 @@ - - - - - TUKEY TEST - - - - - - - 0 - 0 - - - - Linked Number: - - - - - - - - false - - - - 0 - 0 - - - - Show Linked Taxa Only - - - - - - - - 0 - 0 - - - - Taxon - - - - - - - false - - - Show Linked Func Only - - - - - - - false - - - Plot TUKEY - - + + - - - - - 0 - 0 - - - - Function - - + + - - + + Qt::Horizontal - - - - - 0 - 0 - - + + - Linked Number: - + Group by - - + + false - - Restore both lists to their original full items - - - Reset Funtion & Taxa List - - - - - - - - 0 - 0 - - - - true - - - - - - + 0 0 - - true - - - - - - - false - - Run TUKEY Test + Run ANOVA Test - - - - - - - 0 - 0 - - - - Meta - - - - - - - - - - Qt::RightToLeft - - - In Condition - - - - - - - false - - - - - - - - - false - - - - - - - - - - - Stats for + + + + Qt::Horizontal - - - - - Sum All - - - - - Each Item - - - - @@ -3576,7 +3844,14 @@ Group-Control TEST - + + + + Control Group + + + + @@ -3613,6 +3888,29 @@ + + + + + 0 + 0 + + + + Groups (Default all) + + + + + + + false + + + Run Dunnett's TEST + + + @@ -3698,215 +3996,203 @@ - + - - - - - 0 - 0 - + + + + false - Groups (Default all) + Run Deseq2 - - - - - - - false - - - Run Dunnett's TEST - - - - - - - Control Group + + + + Qt::Horizontal - - - false - - - Run Deseq2 + + + Qt::Horizontal + + + - - - - - - - - + + + DESeq2 + + + + - + 0 0 - Col Cluster - - - true + Groups - - - - Row Cluster - - - true + + + + Qt::Horizontal - - - - - - false - - - - 0 - 0 - - - - Plot Top Heatmap - - - false - - - - - - - - - - 0 - 0 - - - - Show All Labels - - + + + + + + + 0 + 0 + + + + Group 1 + + + + + + + + 0 + 0 + + + + + + + + + 0 + 0 + + + + Group 2 + + + + + + + + 0 + 0 + + + + + - - - - - 0 - 0 - - - - Qt::RightToLeft - - - X + + + + false - - - - - + 0 0 - - Qt::RightToLeft - - - Y + + + 33 + 0 + - - - - - - - - - - - 0 - 0 - + + + 16777215 + 16777215 + - Font Size + Run DESeq2 - - - - - 0 - 0 - - - - 1 - - - 999 - - - 1 - - - 10 - - + + + + + + + 0 + 0 + + + + + Taxa-Functions + + + + + Taxa + + + + + Functions + + + + + Peptides + + + + + + + + + 0 + 0 + + + + Meta + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + + + + + + 0 + 0 + + + + + - - - - - - false - - - - 0 - 0 - - - - Get Top Table - - - - - - - + + 0 @@ -3918,728 +4204,713 @@ - - - - - 0 - 0 - - + + - - - + + + + 0 + 0 + + + + Qt::RightToLeft + + + In Condition + + - + + + + false + + + + 0 + 0 + + + + + + + + + + false + + + + 0 + 0 + + + + + + + - - - - - - - - Width + + + + Qt::Horizontal - - + + - + 0 0 - - 1 - - - 9999 + + + 16777215 + 200 + - + 1 - - 16 - + + + + 0 + 0 + 207 + 70 + + + + Plot + + + + + + false + + + + 0 + 0 + + + + Plot Sankey + + + + + + + + + + 0 + 0 + + + + Tables + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + + + + + + 0 + 0 + + + + + + + + + + false + + + + 0 + 0 + + + + Plot Volcano + + + + + + + + + 0 + 0 + 888 + 146 + + + + Plotting Parameter + + + + + + + + + 0 + 0 + + + + Qt::LeftToRight + + + Width + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + + + + + 1 + + + 99 + + + 1 + + + 10 + + + + + + + + 0 + 0 + + + + Height + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + + + + + + 0 + 0 + + + + Threshold + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + + + + + + 0 + 0 + + + + + padj + + + + + pvalue + + + + + + + + + 0 + 0 + + + + 1 + + + 99 + + + 1 + + + 8 + + + + + + + + 0 + 0 + + + + Log2FC Range + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + + + + + Font Size + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + + + + + + 0 + 0 + + + + 1 + + + 1.000000000000000 + + + + + + + 1 + + + 12 + + + + + + + + 0 + 0 + + + + - + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + + + + + + 0 + 0 + + + + 1 + + + 20.000000000000000 + + + + + + + + 0 + 0 + + + + 4 + + + 1.000000000000000 + + + 0.010000000000000 + + + 0.050000000000000 + + + + + + + - - + + + + + TUKEY TEST + + + + - + 0 0 - Height + Taxon - - - - - 0 - 0 - - - - 1 - - - 9999 - - - 9 + + + + Qt::Horizontal - - - - - - - - Log2FC + + + + + 0 + 0 + - - - - - Plot Type + Linked Number: - - - - - - all_sig - - - - - no_na - - - - - same_trends - - - - - - + + - true - - false - - 3 - - - 0.000000000000000 - - - 1.000000000000000 - - - - - - To + Show Linked Func Only - - + + - true - - - 3 + false - - 30.000000000000000 + + Restore both lists to their original full items - - - - - Remove Zero Col - - - true + Reset Funtion & Taxa Filter - - - - - - + + - Rename + Stats for - - + + - + 0 0 - - Qt::RightToLeft - - - Taxa - - - true - - - - - - - Qt::RightToLeft - - - Sample - - + true - - - - - - + + - + 0 0 - Sort By + Function - - - - - 0 - 0 - - - - - p-value - - + + - f-statistic (ANOVA) + Sum All - t-statistic (T-Test) + Each Item - - - - - - Qt::Horizontal - - - - - - - - - Scale By + + + + false - - - - - + 0 0 - - - row - - - - - column - - - - - None - - - - - - - Theme + Show Linked Taxa Only - - - - - 0 - 0 - + + + + false - - - - - - - - - Top Number + Plot TUKEY - - + + - + 0 0 - - 1 - - - 9999 - - - 100 - - - - - - - - - - P-value + Linked Number: - - - + + - + 0 0 - - 4 - - - 1.000000000000000 + + true - - 0.010000000000000 + + + + + + false - - 0.050000000000000 + + Run TUKEY Test - - - - - - - - - Differential analysis - - - - - - 0 - - - - FoldChange Calculation - - - - + + - + - + 0 0 - Tables - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + Meta - + - - - Font Size + + + Qt::RightToLeft - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + In Condition - - - 1 - - - 12 + + + false + + + + + + false + + + + + - - - - - - - 0 - 0 - - - - Threshold - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - - - - - - - 0 - 0 - - - - - padj - - - - - pvalue - - - - - - - - - 0 - 0 - - - - 4 - - - 1.000000000000000 - - - 0.010000000000000 - - - 0.050000000000000 - - - - - - - - - false - - - - 0 - 0 - - - - Plot Volcano + + + + Qt::Horizontal - - - - - - - 0 - 0 - - - - Min Log2FC - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - - - - - - - 0 - 0 - - - - 1 - - - 1.000000000000000 - - - - - - - - 0 - 0 - - - - Max Log2FC - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - - - - - - - 0 - 0 - - - - 1 - - - 10.000000000000000 - - - - - - - - - - - - 0 - 0 - - - - Qt::LeftToRight - - - Width - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - - - - - - 1 - - - 99 - - - 1 - - - 10 - - - + + + + + + + + + 0 + 100 + + + + + 16777215 + 250 + + + + 0 + + + + + 0 + 0 + 912 + 196 + + + + Plot + + + + - + - + 0 0 - Height - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + Table - + - + 0 0 - - 1 - - - 99 - - - 1 - - - 8 - + + + + + - - + + false - + 0 0 + + + 16777215 + 50 + + - Plot Sankey + Plot Top Heatmap + + + false - - - - - - - 0 - 0 - - - - Group 1 - - - - - - - - - - - 0 - 0 - - - - Group 2 - - - - - - - - 0 - 0 - - - - - - - - + + false @@ -4649,324 +4920,770 @@ 0 - - - 33 - 0 - - 16777215 - 16777215 + 30 - Run DESeq2 - - - - - - - Qt::Horizontal + Get Top Table - - - - - - - 0 - 0 - - - - Table for Analysis - - - - - - - - 0 - 0 - - - - - Taxa-Functions - - - - - Taxa - - + + + + + + 0 + 0 + 895 + 137 + + + + Plotting Parameter + + + + + + - - Functions - + + + + 0 + 0 + + + + Sort By + + - - Peptides - + + + + 0 + 0 + + + + + p-value + + + + + f-statistic (ANOVA) + + + + + t-statistic (T-Test) + + + - + - - + + - + 0 0 - - Meta - - - - - - - - 0 - 0 - + + + 150 + 0 + - - - - - - - 0 - 0 - + + + 150 + 16777215 + - - Qt::RightToLeft + + + 75 + true + - In Condition - - - - - - - false + T & ANOVA - - + + - - - false + + + + 0 + 0 + + + + + 70 + 0 + + + + + 100 + 16777215 + + + + Width - - - - - - - - - Co-Expression Networks - - - - - - - 0 - 0 - - - - Focus List - - - - - - - - - - - 0 - 0 - - - - Sample - - - - - - - - - In Condition - - - - - - - false - - - - - - - - false + + + + 0 + 0 + + + + 1 + + + 9999 + + + 1 + + + 16 + + + + + + + + 0 + 0 + + + + Height + + + + - + 0 0 + + 1 + + + 9999 + + + 9 + - - - - - - - - - 0 - 0 - + + + + + 150 + 0 + + + + + 150 + 16777215 + + + + + 75 + true + - Table + General - - - - false - - - - 0 - 0 - - + + - - Taxa - + + + + 0 + 0 + + + + + 70 + 0 + + + + + 50 + 16777215 + + + + Top Number + + - - Functions - + + + + 0 + 0 + + + + 1 + + + 9999 + + + 100 + + + + + + - - Taxa-Functions - + + + + 0 + 0 + + + + Font Size + + - - Peptides - + + + + 0 + 0 + + + + 1 + + + 999 + + + 1 + + + 10 + + - + - - - - - 0 - 0 - - - - Qt::LeftToRight - - - Meta - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - + + + + + + + 0 + 0 + + + + Col Cluster + + + true + + + + + + + + 0 + 0 + + + + Row Cluster + + + true + + + + - - - - - 0 - 0 - - - + + + + + + + 0 + 0 + + + + Show All Labels + + + + + + + + 0 + 0 + + + + Qt::LeftToRight + + + X + + + + + + + + 0 + 0 + + + + Qt::LeftToRight + + + Y + + + + - - - - - - - 0 - 0 - - - - Method of Correlation - - - - - - - - - false - - - - 0 - 0 - - - - Drop Item - - + + + + + + P-value + + + + + + + + 0 + 0 + + + + 4 + + + 1.000000000000000 + + + 0.010000000000000 + + + 0.050000000000000 + + + + - - - - false - - - - 0 - 0 + + + + + + Rename + + + + + + + + 0 + 0 + + + + Qt::LeftToRight + + + Taxa + + + true + + + + + + + + 0 + 0 + + + + Qt::LeftToRight + + + Sample + + + true + + + + + + + + + + + 2 + + + QLayout::SetDefaultConstraint + + + + + + 0 + 0 + + + + Plot Type + + + + + + + + all_sig + + + + + no_na + + + + + same_trends + + + + + + + + + + 4 + + + + + + 0 + 0 + + + + + 150 + 0 + + + + + 150 + 16777215 + + + + + 75 + true + + + + Group-Control DESeq2 + + + + + + + + 0 + 0 + + + + + 70 + 0 + + + + + 50 + 16777215 + + + + Log2FC + + + + + + + true + + + false + + + 3 + + + 0.000000000000000 + + + 1.000000000000000 + + + + + + + + 0 + 0 + + + + To + + + + + + + true + + + 3 + + + 30.000000000000000 + + + + + + + + + + 0 + 0 + + + + Remove Zero Col + + + true + + + + + + + + + Qt::Horizontal + + + + + + + + + + 0 + 0 + + + + + 70 + 0 + + + + Scale By + + + + + + + + 0 + 0 + + + + + row + + + + + column + + + + + None + + + + + + + + + 0 + 0 + + + + Theme + + + + + + + + 0 + 0 + + + + + + + + + + + + + + + + + Expression Analysis + + + + + + QTabWidget::Triangular + + + 0 + + + + Co-Expression + + + + + + + + false + + + + 0 + 0 + + + + Drop Item + + + + + + + false + + + + 0 + 0 @@ -4979,6 +5696,12 @@ false + + + 0 + 0 + + Add a list to the drawing box, make sure there is one item per line. @@ -4989,85 +5712,7 @@ - - - - - 0 - 0 - - - - Group - - - true - - - - - - - - pearson - - - - - spearman - - - - - - - - - 0 - 0 - - - - Correlation threshold for Plot - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - - - - - - - 0 - 0 - - - - 1.000000000000000 - - - 0.010000000000000 - - - 0.500000000000000 - - - - - - - false - - - Add selected item to the drawing box - - - Add to Focus List - - - - + false @@ -5080,7 +5725,10 @@ - + + + + @@ -5090,7 +5738,67 @@ - + + + + + 0 + 0 + + + + Sample + + + + + + + + + In Condition + + + + + + + false + + + + + + + + + false + + + + 0 + 0 + + + + + 150 + 0 + + + + + 500 + 16777215 + + + + + + + + + @@ -5214,174 +5922,537 @@ - + - + - Qt::Vertical + Qt::Horizontal - - + + + + + 0 + 0 + + + + Group + + + true + + + + + + + + + + 0 + 0 + + + + Table + + + + + + + false + + + + 0 + 0 + + + + + Taxa + + + + + Functions + + + + + Taxa-Functions + + + + + Peptides + + + + + + + + + 0 + 0 + + + + Qt::LeftToRight + + + Meta + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + - + + + + 0 + 0 + + + + + + + + + + + 0 + 0 + + + + Focus List + + + + + + + false + + + Add selected item to the drawing box + + + Add to Focus List + + + + + + + + 0 + 150 + + + + + 16777215 + 250 + + + + 1 + + + + + 0 + 0 + 309 + 41 + + + + Plotting + + - + + + false + - + 0 0 - Height + Plot Co-Expression Network - - - - 0 - 0 - - - - 1 - - - 99 - - - 1 - - - 10 - - - 10 - - - - - - - - 0 - 0 - - - - Width - - - - - - - - 0 - 0 - - - - - 20 - 0 - - - - 1 - - - 99 - - - 1 - - - 8 - - - - - - - Font Size - - - - - + - true - - - - 0 - 0 - - - - 1 - - - 10 + false - - - - - Show Labels + Plot Co-Expression Heatmap - - - - true - - - Rename Taxa - - - true - - + + + + + + 0 + 0 + 888 + 145 + + + + Plotting Parameter + + + + + + + + + + Show All Labels + + + + + + + X + + + + + + + Y + + + + + + + + + true + + + + 0 + 0 + + + + Rename Taxa + + + true + + + + + + + + 0 + 0 + + + + Threshold for Plot + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + + + + + + + + 0 + 0 + + + + Method of Correlation + + + + + + + + pearson + + + + + spearman + + + + + + + + + + + + + 0 + 0 + + + + Font Size + + + + + + + true + + + + 0 + 0 + + + + 1 + + + 10 + + + + + + + + + + 0 + 0 + + + + Show Labels + + + + + + + + + Theme + + + + + + + + + + + + + 0 + 0 + + + + 1.000000000000000 + + + 0.010000000000000 + + + 0.500000000000000 + + + + + + + + + + 0 + 0 + + + + Height + + + + + + + + 0 + 0 + + + + 1 + + + 99 + + + 1 + + + 10 + + + 10 + + + + + + + + 0 + 0 + + + + Width + + + + + + + + 0 + 0 + + + + + 20 + 0 + + + + 1 + + + 99 + + + 1 + + + 8 + + + + + + + + + + 75 + true + + + + Heatmap + + + + + + + + 75 + true + + + + General + + + + + + + + 75 + true + + + + Network + + + + + + + Plot List Only + + + true + + + + + + + Qt::Horizontal + + + + - - - - - Plot List Only - - - - - - - false - - - - 0 - 0 - - - - Plot Co-Expression Network - - - - + + - - + + + + + + + Qt::Horizontal + + @@ -5390,813 +6461,383 @@ Expression Trends - - - - Select Cluster - - - - - - - false - - - - 0 - 0 - - - - Get ClusterTable - - - - - - - - 0 - 0 - - - - Height - - - - - - - Plot Samples - - - - - - - - 0 - 0 - - - - Group - - - true - - - - - - - - 0 - 0 - - - - Width - - - - - - - false - - - - 0 - 0 - + + + + + 16777215 + 210 + - - Plot Interactive Line - - - - - - - false - - - - 0 - 0 - - - - Drop Item - - - - - - - Simplify Taxa Names - - - - - - - Get Intnsity Results - - - - - - - 1 - - - 5 - - - - - - - false - - - - 0 - 0 - - - - Add conditionally filtered items to the drawing box - - - Add Top to List - - - - - - - - - - 0 - 0 - - - - Qt::LeftToRight - - - Table - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - - - - - - false - - - - Taxa - - - - - Functions - - - - - Taxa-Functions - - - - - Peptides - - - - - - - - Meta - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - - - - - - - - - - - - 0 - 0 - - - - - 600 - 0 - - - - - - - - Select for plotting - - - - - - - false - - - - 0 - 0 - - - - Clean List - - - - - - - false - - - - 0 - 0 - - - - Add selected item to the drawing box - - - Add to List - - - - - - - - 0 - 0 - - - - Sample - - - - - - - - - - false - - - - 0 - 0 - - - - Plot Trends - - - - - - - Show Legend - - - - - - - Cluster Number - - - - - - - - 0 - 0 - - - - 1 - - - 200 - - - 9 - - - - - - - - 0 - 0 - - - - 1 - - - 200 - - - 16 - - - - - - - - - - 0 - 0 - - - - Select Top - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - - - - - - - 0 - 0 - - - - 1 - - - 99999 - - - 10 - - - - - - - - 0 - 0 - - - - Sort by - - - - - - - - Total Intensity - - - - - Frequency in Samples - - - - - Number of links - - - - - ANOVA(p-value) - - - - - ANOVA(f-statistic) - - - - - T-TEST(p-value) - - - - - T-TEST(t-statistic) - - - - - Deseq2-up(p-value) - - - - - Deseq2-down(p-value) - - - - - Deseq2-up(log2FC) - - - - - Deseq2-down(log2FC) - - - - - - - - Filter with threshold - - - - - - - - - false - - - - 0 - 0 - - - - Add a list to the drawing box, make sure there is one item per line. - - - Add a list - - - - - - - - - - - 0 - 0 - - - - Font Size - - - - - - - - 0 - 0 - - - - - - - - 1 - - - 10 - - - - - - - List for Plotting - - - - - - - - - - - - - 0 - 0 - - - - Qt::LeftToRight - - - In Condition - - - - - - - false - - - - - - - - - false - - - - 0 - 0 - - - - - - - - - - - - - - - - - Taxa-Func Link - - - - - - true - - - 1 - - - - Taxa-Func Link - - - - - - - - - 0 - 0 - - - - Qt::LeftToRight - - - Scale - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter - - - - - - - - 0 - 0 - - - - - row - - - - - column - - - - - None - - - - - - - - - 0 - 0 - - - - Theme - - - - - - - - 0 - 0 - - - - - - - - - - Show All Labels - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - - - - - - X - - - - - - - Y - - + + 0 + + + + + 0 + 0 + 490 + 81 + + + + Plot + + + + + + + + false + + + + 0 + 0 + + + + Get ClusterTable + + + + + + + Qt::Horizontal + + + + + + + Cluster Number + + + + + + + Select Cluster + + + + + + + false + + + + 0 + 0 + + + + Plot Trends + + + + + + + false + + + + 0 + 0 + + + + Plot Interactive Line + + + + + + + + + + 1 + + + 5 + + + + + + + + 75 + true + + + + Calculate Cluster + + + + + + + + 75 + true + + + + Plot Specific Cluster + + + + - - - - - - - - 0 - 0 - - - - Rename - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - - - - - - - 0 - 0 - - - - Samples - - - true - - - - - - - - 0 - 0 - - - - Taxa - - - true - - - - - - - - 0 - 0 - - - - - PreferDefault - - - - Qt::LeftToRight - - - Bar Percent - - + + + + + 0 + 0 + 538 + 63 + + + + Plotting Parameter + + + + + + + + + 75 + true + + + + General + + + + + + + + 0 + 0 + + + + 1 + + + 200 + + + 9 + + + + + + + + 75 + true + + + + Specific cluster + + + + + + + + 0 + 0 + + + + Get Intnsity Results + + + + + + + + 0 + 0 + + + + Font Size + + + + + + + + 0 + 0 + + + + Height + + + + + + + + 0 + 0 + + + + Show Legend + + + true + + + + + + + + 0 + 0 + + + + Plot Samples + + + + + + + + 0 + 0 + + + + Simplify Taxa Names + + + true + + + + + + + + 0 + 0 + + + + Width + + + + + + + + 0 + 0 + + + + 1 + + + 200 + + + 16 + + + + + + + + 0 + 0 + + + + 1 + + + 10 + + + + - - + + - - + + + + false + - + 0 0 + + Add selected item to the drawing box + - Function + Add to List - - + + - + - + 0 0 - Width + Select Top + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - + - + 0 0 @@ -6205,15 +6846,15 @@ 1 - 1000 + 99999 - 16 + 10 - + 0 @@ -6221,134 +6862,417 @@ - Height + Sort by + + + + + + + + Total Intensity + + + + + Frequency in Samples + + + + + Number of links + + + + + ANOVA(p-value) + + + + + ANOVA(f-statistic) + + + + + T-TEST(p-value) + + + + + T-TEST(t-statistic) + + + + + Deseq2-up(p-value) + + + + + Deseq2-down(p-value) + + + + + Deseq2-up(log2FC) + + + + + Deseq2-down(log2FC) + + + + + + + + Filter with threshold + + + + + + false + + + + 0 + 0 + + + + Add conditionally filtered items to the drawing box + + + Add Top to List + + + + + + + + 0 + 0 + + + + + 600 + 0 + + + + + + + + + 0 + 0 + + + + List for Plotting + + + + + - + - + 0 0 - - 1 - - - 1000 + + Qt::LeftToRight - - 9 + + In Condition - - - Label Font Size - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + false - + + + + + false + + + + 0 + 0 + + + + + + + + + + + + Select for plotting + + + + + + + + 0 + 0 + + + + Sample + + + + + + + + 0 + 0 + + + + Group + + + true + + + + + + + + + + + + + Qt::Horizontal + + + + + + + Qt::Horizontal + + + + + + + + + false + - + 0 0 - - 1 - - - 999 - - - 10 + + Drop Item - + + + false + - + 0 0 - - Qt::LeftToRight - - Col Cluster - - - true + Clean List - + + + false + - + 0 0 - - Row Cluster + + Add a list to the drawing box, make sure there is one item per line. - - true + + Add A list + + + + + + + 0 + 0 + + + + + + - + - + 0 0 + + Qt::LeftToRight + - Show Legend + Table - - true + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - - - 0 - 0 - + + + false + + + Taxa + + + + + Functions + + + + + Taxa-Functions + + + + + Peptides + + + + + + - Plot Mean + Meta + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + - - + + + + + + + + + Taxa-Func Link + + + + + + true + + + QTabWidget::Triangular + + + 0 + + + + Taxa-Func Link + + + + - + 0 0 - Meta + Sample + + + + + + + + 0 + 0 + + + + Function + + + + + + + + 0 + 0 + + + + Taxa @@ -6365,7 +7289,23 @@ - + + + + + 0 + 0 + + + + Group + + + true + + + + @@ -6389,7 +7329,7 @@ false - + 0 0 @@ -6411,6 +7351,12 @@ 0 + + + 300 + 16777215 + + @@ -6419,101 +7365,656 @@ - - + + - + 0 0 - Sample + Meta + + + + + + + + + + + + + Qt::Horizontal + + + + + + + + 0 + 0 + + + + true + + + + + + + + 0 + 0 + + + + true - - + + - - - false - + - + 0 0 - Get Intensity Matrix + Linked Number: - - + false - + + 0 + 0 + + + + Show Linked Taxa Only + + + + + + + + + + + 0 0 - Plot Heatmap + Linked Number: - - + false - + 0 0 - Plot Bar + Show Linked Func Only - - - - - 0 - 0 - - - - Taxa + + + + + 16777215 + 250 + + + 0 + + + + + 0 + 0 + 888 + 196 + + + + Plot + + + + + + false + + + + 0 + 0 + + + + + 16777215 + 50 + + + + Plot Heatmap + + + + + + + false + + + + 0 + 0 + + + + Plot Bar + + + + + + + false + + + + 0 + 0 + + + + Get Intensity Table + + + + + + + + + 0 + 0 + 538 + 127 + + + + Plotting Parameter + + + + + + + + + 0 + 0 + + + + + 75 + true + + + + General + + + + + + + Qt::Horizontal + + + + + + + + + + 0 + 0 + + + + Theme + + + + + + + + 0 + 0 + + + + + + + + + + + 0 + 0 + + + + + 75 + true + + + + Heatmap + + + + + + + + 0 + 0 + + + + Qt::LeftToRight + + + Col Cluster + + + true + + + + + + + + + + 0 + 0 + + + + Qt::LeftToRight + + + Scale + + + Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter + + + + + + + + 0 + 0 + + + + + row + + + + + column + + + + + None + + + + + + + + + + + 0 + 0 + + + + + PreferDefault + + + + Qt::LeftToRight + + + Bar Percent + + + + + + + + 0 + 0 + + + + Plot Mean + + + + + + + + 75 + true + + + + Bar + + + + + + + + + + 0 + 0 + + + + Label Font Size + + + Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter + + + + + + + + 0 + 0 + + + + 1 + + + 999 + + + 10 + + + + + + + + + + 0 + 0 + + + + Show Legend + + + true + + + + + + + + 0 + 0 + + + + Row Cluster + + + true + + + + + + + + + + 0 + 0 + + + + Width + + + + + + + + 0 + 0 + + + + 1 + + + 1000 + + + 16 + + + + + + + + 0 + 0 + + + + Height + + + + + + + + 0 + 0 + + + + 1 + + + 1000 + + + 9 + + + + + + + + + + + + 0 + 0 + + + + Rename + + + Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter + + + + + + + + 0 + 0 + + + + Samples + + + true + + + + + + + + 0 + 0 + + + + Taxa + + + true + + + + + + + + + + + + 0 + 0 + + + + Show All Labels + + + Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter + + + + + + + + 0 + 0 + + + + X + + + + + + + + 0 + 0 + + + + Y + + + + + + + + + - - - - - 0 - 0 - - - - Group - - - true + + + + Qt::Horizontal - + @@ -6648,136 +8149,24 @@ - - - - false - - - - 0 - 0 - - - - Restore both lists to their original full items - - - Reset List - - - - - - - - - - - - 0 - 0 - - - - Linked Number: - - - - - - - - false - - - - 0 - 0 - - - - Show Linked Taxa Only - - - - - - - - - - - - 0 - 0 - - - - Linked Number: - - - - - - - - false - - - - 0 - 0 - - - - Show Linked Func Only - - - - - - - - 0 - 0 - - - - true + + + + false - - - - - + 0 0 - - true - - - - - - - - - - - - - Qt::Horizontal + + Restore both lists to their original full items - - - - - - Qt::Horizontal + + Reset List @@ -6788,36 +8177,35 @@ Taxa-Func Network - - + + + + + false - + 0 0 - - Drop Item - - - - - - - false + + + 100 + 16777215 + - Add conditionally filtered items to the drawing box + Add selected item to the drawing box - Add Top to List + Add to Focus List - + @@ -6830,285 +8218,302 @@ - - - - - - - - 0 - 0 - - - - Group - - - true - - - - - - - - - Show Labels - - - - - - - true - - - Raname Taxa - - - true - - - - - - - - - - + + false - + 0 0 + + + 100 + 16777215 + + + + Add conditionally filtered items to the drawing box + - Clean List + Add Top to List - - - - - - - - - - 0 - 0 - - - - Table - - - - - - - false - - - - Taxa - + + + + + 0 + 150 + + + + + 16777215 + 210 + + + + 0 + + + + + 0 + 0 + 98 + 41 + + + + Plot + + + + + + false + + + + 0 + 0 + + + + + 16777215 + 50 + + + + Plot Ntework + + + false + + - - - Functions - + + + + + + 0 + 0 + 383 + 68 + + + + Plotting Parameter + + + + + + + + + 0 + 0 + + + + Width + + + + + + + + 0 + 0 + + + + 1 + + + 99 + + + 1 + + + 10 + + + 10 + + + + + + + + 0 + 0 + + + + Height + + + + + + + true + + + + 0 + 0 + + + + + 20 + 0 + + + + 1 + + + 99 + + + 1 + + + 8 + + + 10 + + + + - - - Taxa-Functions - + + + + + + Plot List Only + + + + + + + false + + + Without Links + + + false + + + + - - - - - - Meta - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - - - - - - + + + + + + Show Labels + + + + + + + true + + + Raname Taxa + + + true + + + + + + + + + + + Font Size + + + + + + + true + + + 1 + + + 10 + + + + + + + + - - - - false + + + + + 0 + 0 + - - Add selected item to the drawing box + + + + + + + 0 + 0 + + + + + 16777215 + 50 + - Add to Focus List + Group + + + true - - - - - - - 0 - 0 - - - - Width - - - - - - - - 0 - 0 - - - - 1 - - - 99 - - - 1 - - - 10 - - - 10 - - - - - - - - 0 - 0 - - - - Height - - - - - - - true - - - - 0 - 0 - - - - - 20 - 0 - - - - 1 - - - 99 - - - 1 - - - 8 - - - 10 - - - - - - - - - - - - - Qt::RightToLeft - - - In Condition - - - - - - - false - - - - - - - - - false - - - - - - - - - - - - - Font Size - - - - - - - true - - - 1 - - - 10 - - - - + - + @@ -7218,89 +8623,189 @@ - - - - 0 - 0 - + + + + 0 + 0 + + + + Filter with threshold + + + + + + + + + + 0 + 0 + + + + Focus List + + + + + + + + 0 + 0 + + + + Qt::Horizontal + + + + + + + + + + + + false + + + + 0 + 0 + + + + Drop Item + + + + + + + false + + + + 0 + 0 + + + + Clean List + + + + + + + false + + + Add a list to the drawing box, make sure there is one item per line. + + + Add a list + + + + + + + + + + + Qt::RightToLeft - Filter with threshold + In Condition + + + + + + + false + + + + + + false + + + + + - - - - false - - - - 0 - 0 - - - - Plot Ntework - - - false - - - - - - - - 0 - 0 - - - - Focus List - - - - - - - false - - - Add a list to the drawing box, make sure there is one item per line. - - - Add a list - - - - - + + - + + + + 0 + 0 + + - Plot List Only + Table - + false + + + Taxa + + + + + Functions + + + + + Taxa-Functions + + + + + + - Without Links + Meta - - false + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + + + + + Qt::Horizontal + + + @@ -8122,8 +9627,8 @@ 0 0 - 1059 - 23 + 972 + 21 @@ -8249,38 +9754,6 @@ - - checkBox_co_expression_in_condition - clicked(bool) - comboBox_co_expression_condition_meta - setEnabled(bool) - - - 59 - 107 - - - 65 - 107 - - - - - checkBox_co_expression_in_condition - clicked(bool) - comboBox_co_expression_condition_group - setEnabled(bool) - - - 59 - 107 - - - 71 - 108 - - - checkBox_deseq2_comparing_in_condition clicked(bool) @@ -8313,38 +9786,6 @@ - - checkBox_trends_in_condition - clicked(bool) - comboBox_trends_condition_meta - setEnabled(bool) - - - 55 - 105 - - - 64 - 105 - - - - - checkBox_trends_in_condition - clicked(bool) - comboBox_trends_condition_group - setEnabled(bool) - - - 55 - 105 - - - 72 - 106 - - - checkBox_tflink_in_condition clicked(bool) @@ -8649,6 +10090,22 @@ + + checkBox_tf_link_net_plot_list_only + clicked(bool) + checkBox_tf_link_net_plot_list_only_no_link + setEnabled(bool) + + + 834 + 339 + + + 932 + 340 + + + checkBox_basic_heatmap_plot_mean clicked(bool) @@ -8666,18 +10123,66 @@ - checkBox_tf_link_net_plot_list_only + checkBox_co_expression_in_condition clicked(bool) - checkBox_tf_link_net_plot_list_only_no_link + comboBox_co_expression_condition_meta setEnabled(bool) - 834 - 339 + 59 + 107 - 932 - 340 + 65 + 107 + + + + + checkBox_co_expression_in_condition + clicked(bool) + comboBox_co_expression_condition_group + setEnabled(bool) + + + 59 + 107 + + + 71 + 108 + + + + + checkBox_trends_in_condition + clicked(bool) + comboBox_trends_condition_meta + setEnabled(bool) + + + 55 + 105 + + + 64 + 105 + + + + + checkBox_trends_in_condition + clicked(bool) + comboBox_trends_condition_group + setEnabled(bool) + + + 55 + 105 + + + 72 + 106 diff --git a/metax/gui/metax_gui/ui_main_window.py b/metax/gui/metax_gui/ui_main_window.py index b374d53..7b4bb91 100644 --- a/metax/gui/metax_gui/ui_main_window.py +++ b/metax/gui/metax_gui/ui_main_window.py @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- -# Form implementation generated from reading ui file 'c:\Users\max\OneDrive - University of Ottawa\code\TaxaFunc\MetaX\metax\gui\metax_gui\main_window.ui' +# Form implementation generated from reading ui file 'c:\Users\Qing\OneDrive - University of Ottawa\code\TaxaFunc\MetaX\metax\gui\metax_gui\main_window.ui' # # Created by: PyQt5 UI code generator 5.15.9 # @@ -14,7 +14,7 @@ class Ui_metaX_main(object): def setupUi(self, metaX_main): metaX_main.setObjectName("metaX_main") - metaX_main.resize(1059, 598) + metaX_main.resize(972, 721) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) @@ -39,6 +39,8 @@ def setupUi(self, metaX_main): self.tabWidget_TaxaFuncAnalyzer.setSizePolicy(sizePolicy) self.tabWidget_TaxaFuncAnalyzer.setContextMenuPolicy(QtCore.Qt.NoContextMenu) self.tabWidget_TaxaFuncAnalyzer.setLayoutDirection(QtCore.Qt.LeftToRight) + self.tabWidget_TaxaFuncAnalyzer.setDocumentMode(False) + self.tabWidget_TaxaFuncAnalyzer.setTabsClosable(False) self.tabWidget_TaxaFuncAnalyzer.setObjectName("tabWidget_TaxaFuncAnalyzer") self.tab = QtWidgets.QWidget() self.tab.setObjectName("tab") @@ -145,7 +147,7 @@ def setupUi(self, metaX_main): self.toolBox_2.setMaximumSize(QtCore.QSize(1677, 16777215)) self.toolBox_2.setObjectName("toolBox_2") self.page_2 = QtWidgets.QWidget() - self.page_2.setGeometry(QtCore.QRect(0, 0, 496, 373)) + self.page_2.setGeometry(QtCore.QRect(0, 0, 453, 500)) self.page_2.setObjectName("page_2") self.gridLayout_27 = QtWidgets.QGridLayout(self.page_2) self.gridLayout_27.setObjectName("gridLayout_27") @@ -664,6 +666,8 @@ def setupUi(self, metaX_main): self.gridLayout_8 = QtWidgets.QGridLayout(self.tab_basic_stast) self.gridLayout_8.setObjectName("gridLayout_8") self.tabWidget_4 = QtWidgets.QTabWidget(self.tab_basic_stast) + self.tabWidget_4.setTabPosition(QtWidgets.QTabWidget.North) + self.tabWidget_4.setTabShape(QtWidgets.QTabWidget.Triangular) self.tabWidget_4.setObjectName("tabWidget_4") self.tab_12 = QtWidgets.QWidget() self.tab_12.setObjectName("tab_12") @@ -671,6 +675,18 @@ def setupUi(self, metaX_main): self.gridLayout_26.setObjectName("gridLayout_26") self.gridLayout_35 = QtWidgets.QGridLayout() self.gridLayout_35.setObjectName("gridLayout_35") + self.radioButton_basic_pca_sample = QtWidgets.QRadioButton(self.tab_12) + self.radioButton_basic_pca_sample.setObjectName("radioButton_basic_pca_sample") + self.gridLayout_35.addWidget(self.radioButton_basic_pca_sample, 3, 0, 1, 1) + self.radioButton_basic_pca_group = QtWidgets.QRadioButton(self.tab_12) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.radioButton_basic_pca_group.sizePolicy().hasHeightForWidth()) + self.radioButton_basic_pca_group.setSizePolicy(sizePolicy) + self.radioButton_basic_pca_group.setChecked(True) + self.radioButton_basic_pca_group.setObjectName("radioButton_basic_pca_group") + self.gridLayout_35.addWidget(self.radioButton_basic_pca_group, 2, 0, 1, 1) self.horizontalLayout_36 = QtWidgets.QHBoxLayout() self.horizontalLayout_36.setObjectName("horizontalLayout_36") self.checkBox_basic_in_condtion = QtWidgets.QCheckBox(self.tab_12) @@ -688,6 +704,11 @@ def setupUi(self, metaX_main): self.horizontalLayout_68.addWidget(self.comboBox_basic_condition_group) self.horizontalLayout_36.addLayout(self.horizontalLayout_68) self.gridLayout_35.addLayout(self.horizontalLayout_36, 2, 1, 1, 1) + self.line_7 = QtWidgets.QFrame(self.tab_12) + self.line_7.setFrameShape(QtWidgets.QFrame.HLine) + self.line_7.setFrameShadow(QtWidgets.QFrame.Sunken) + self.line_7.setObjectName("line_7") + self.gridLayout_35.addWidget(self.line_7, 1, 0, 1, 4) self.horizontalLayout_35 = QtWidgets.QHBoxLayout() self.horizontalLayout_35.setObjectName("horizontalLayout_35") self.label_70 = QtWidgets.QLabel(self.tab_12) @@ -717,7 +738,7 @@ def setupUi(self, metaX_main): sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.label_146.sizePolicy().hasHeightForWidth()) self.label_146.setSizePolicy(sizePolicy) - self.label_146.setAlignment(QtCore.Qt.AlignCenter) + self.label_146.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter) self.label_146.setObjectName("label_146") self.horizontalLayout_35.addWidget(self.label_146) self.comboBox_basic_pca_meta = QtWidgets.QComboBox(self.tab_12) @@ -732,60 +753,158 @@ def setupUi(self, metaX_main): self.verticalLayout_basic_pca_group = QtWidgets.QVBoxLayout() self.verticalLayout_basic_pca_group.setObjectName("verticalLayout_basic_pca_group") self.gridLayout_35.addLayout(self.verticalLayout_basic_pca_group, 2, 2, 1, 2) - self.radioButton_basic_pca_sample = QtWidgets.QRadioButton(self.tab_12) - self.radioButton_basic_pca_sample.setObjectName("radioButton_basic_pca_sample") - self.gridLayout_35.addWidget(self.radioButton_basic_pca_sample, 3, 0, 1, 1) - self.line_7 = QtWidgets.QFrame(self.tab_12) - self.line_7.setFrameShape(QtWidgets.QFrame.HLine) - self.line_7.setFrameShadow(QtWidgets.QFrame.Sunken) - self.line_7.setObjectName("line_7") - self.gridLayout_35.addWidget(self.line_7, 1, 0, 1, 4) self.verticalLayout_basic_pca_sample = QtWidgets.QVBoxLayout() self.verticalLayout_basic_pca_sample.setObjectName("verticalLayout_basic_pca_sample") self.gridLayout_35.addLayout(self.verticalLayout_basic_pca_sample, 3, 1, 1, 3) - self.radioButton_basic_pca_group = QtWidgets.QRadioButton(self.tab_12) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) + self.horizontalLayout_6 = QtWidgets.QHBoxLayout() + self.horizontalLayout_6.setObjectName("horizontalLayout_6") + self.label_142 = QtWidgets.QLabel(self.tab_12) + self.label_142.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter) + self.label_142.setObjectName("label_142") + self.horizontalLayout_6.addWidget(self.label_142) + self.comboBox_sub_meta_pca = QtWidgets.QComboBox(self.tab_12) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.radioButton_basic_pca_group.sizePolicy().hasHeightForWidth()) - self.radioButton_basic_pca_group.setSizePolicy(sizePolicy) - self.radioButton_basic_pca_group.setChecked(True) - self.radioButton_basic_pca_group.setObjectName("radioButton_basic_pca_group") - self.gridLayout_35.addWidget(self.radioButton_basic_pca_group, 2, 0, 1, 1) + sizePolicy.setHeightForWidth(self.comboBox_sub_meta_pca.sizePolicy().hasHeightForWidth()) + self.comboBox_sub_meta_pca.setSizePolicy(sizePolicy) + self.comboBox_sub_meta_pca.setObjectName("comboBox_sub_meta_pca") + self.comboBox_sub_meta_pca.addItem("") + self.horizontalLayout_6.addWidget(self.comboBox_sub_meta_pca) + self.gridLayout_35.addLayout(self.horizontalLayout_6, 0, 2, 1, 1) self.gridLayout_26.addLayout(self.gridLayout_35, 0, 0, 1, 1) - self.gridLayout_34 = QtWidgets.QGridLayout() - self.gridLayout_34.setObjectName("gridLayout_34") - self.label_122 = QtWidgets.QLabel(self.tab_12) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Preferred) + self.toolBox_4 = QtWidgets.QToolBox(self.tab_12) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.label_122.sizePolicy().hasHeightForWidth()) - self.label_122.setSizePolicy(sizePolicy) - self.label_122.setObjectName("label_122") - self.gridLayout_34.addWidget(self.label_122, 0, 0, 1, 1) - self.horizontalLayout_34 = QtWidgets.QHBoxLayout() - self.horizontalLayout_34.setObjectName("horizontalLayout_34") - self.checkBox_pca_if_show_group_name_in_label = QtWidgets.QCheckBox(self.tab_12) - self.checkBox_pca_if_show_group_name_in_label.setEnabled(True) + sizePolicy.setHeightForWidth(self.toolBox_4.sizePolicy().hasHeightForWidth()) + self.toolBox_4.setSizePolicy(sizePolicy) + self.toolBox_4.setMinimumSize(QtCore.QSize(0, 200)) + self.toolBox_4.setMaximumSize(QtCore.QSize(16777215, 430)) + self.toolBox_4.setObjectName("toolBox_4") + self.page_10 = QtWidgets.QWidget() + self.page_10.setGeometry(QtCore.QRect(0, 0, 287, 188)) + self.page_10.setObjectName("page_10") + self.gridLayout_40 = QtWidgets.QGridLayout(self.page_10) + self.gridLayout_40.setObjectName("gridLayout_40") + self.gridLayout_54 = QtWidgets.QGridLayout() + self.gridLayout_54.setObjectName("gridLayout_54") + self.pushButton_plot_corr = QtWidgets.QPushButton(self.page_10) + self.pushButton_plot_corr.setEnabled(False) + self.pushButton_plot_corr.setObjectName("pushButton_plot_corr") + self.gridLayout_54.addWidget(self.pushButton_plot_corr, 1, 1, 1, 1) + self.pushButton_basic_plot_number_bar = QtWidgets.QPushButton(self.page_10) + self.pushButton_basic_plot_number_bar.setEnabled(False) + self.pushButton_basic_plot_number_bar.setObjectName("pushButton_basic_plot_number_bar") + self.gridLayout_54.addWidget(self.pushButton_basic_plot_number_bar, 2, 1, 1, 1) + self.label_170 = QtWidgets.QLabel(self.page_10) + self.label_170.setObjectName("label_170") + self.gridLayout_54.addWidget(self.label_170, 2, 0, 1, 1) + self.pushButton_plot_box_sns = QtWidgets.QPushButton(self.page_10) + self.pushButton_plot_box_sns.setEnabled(False) + self.pushButton_plot_box_sns.setObjectName("pushButton_plot_box_sns") + self.gridLayout_54.addWidget(self.pushButton_plot_box_sns, 2, 2, 1, 1) + self.pushButton_plot_beta_div = QtWidgets.QPushButton(self.page_10) + self.pushButton_plot_beta_div.setEnabled(False) + self.pushButton_plot_beta_div.setObjectName("pushButton_plot_beta_div") + self.gridLayout_54.addWidget(self.pushButton_plot_beta_div, 3, 2, 1, 1) + self.pushButton_plot_pca_js = QtWidgets.QPushButton(self.page_10) + self.pushButton_plot_pca_js.setEnabled(False) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.checkBox_pca_if_show_group_name_in_label.sizePolicy().hasHeightForWidth()) - self.checkBox_pca_if_show_group_name_in_label.setSizePolicy(sizePolicy) - self.checkBox_pca_if_show_group_name_in_label.setStatusTip("") - self.checkBox_pca_if_show_group_name_in_label.setChecked(True) - self.checkBox_pca_if_show_group_name_in_label.setObjectName("checkBox_pca_if_show_group_name_in_label") - self.horizontalLayout_34.addWidget(self.checkBox_pca_if_show_group_name_in_label) - self.checkBox_pca_if_show_lable = QtWidgets.QCheckBox(self.tab_12) + sizePolicy.setHeightForWidth(self.pushButton_plot_pca_js.sizePolicy().hasHeightForWidth()) + self.pushButton_plot_pca_js.setSizePolicy(sizePolicy) + self.pushButton_plot_pca_js.setObjectName("pushButton_plot_pca_js") + self.gridLayout_54.addWidget(self.pushButton_plot_pca_js, 0, 2, 1, 1) + self.label_121 = QtWidgets.QLabel(self.page_10) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Maximum) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.label_121.sizePolicy().hasHeightForWidth()) + self.label_121.setSizePolicy(sizePolicy) + self.label_121.setObjectName("label_121") + self.gridLayout_54.addWidget(self.label_121, 0, 0, 1, 1) + self.label_171 = QtWidgets.QLabel(self.page_10) + self.label_171.setObjectName("label_171") + self.gridLayout_54.addWidget(self.label_171, 3, 0, 1, 1) + self.pushButton_plot_alpha_div = QtWidgets.QPushButton(self.page_10) + self.pushButton_plot_alpha_div.setEnabled(False) + self.pushButton_plot_alpha_div.setObjectName("pushButton_plot_alpha_div") + self.gridLayout_54.addWidget(self.pushButton_plot_alpha_div, 3, 1, 1, 1) + self.pushButton_plot_pca_sns = QtWidgets.QPushButton(self.page_10) + self.pushButton_plot_pca_sns.setEnabled(False) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.checkBox_pca_if_show_lable.sizePolicy().hasHeightForWidth()) - self.checkBox_pca_if_show_lable.setSizePolicy(sizePolicy) - self.checkBox_pca_if_show_lable.setLayoutDirection(QtCore.Qt.LeftToRight) - self.checkBox_pca_if_show_lable.setObjectName("checkBox_pca_if_show_lable") - self.horizontalLayout_34.addWidget(self.checkBox_pca_if_show_lable) - self.checkBox_pca_if_adjust_pca_label = QtWidgets.QCheckBox(self.tab_12) + sizePolicy.setHeightForWidth(self.pushButton_plot_pca_sns.sizePolicy().hasHeightForWidth()) + self.pushButton_plot_pca_sns.setSizePolicy(sizePolicy) + self.pushButton_plot_pca_sns.setObjectName("pushButton_plot_pca_sns") + self.gridLayout_54.addWidget(self.pushButton_plot_pca_sns, 0, 1, 1, 1) + self.label_119 = QtWidgets.QLabel(self.page_10) + self.label_119.setObjectName("label_119") + self.gridLayout_54.addWidget(self.label_119, 1, 0, 1, 1) + self.pushButton_plot_basic_treemap = QtWidgets.QPushButton(self.page_10) + self.pushButton_plot_basic_treemap.setEnabled(False) + self.pushButton_plot_basic_treemap.setObjectName("pushButton_plot_basic_treemap") + self.gridLayout_54.addWidget(self.pushButton_plot_basic_treemap, 4, 1, 1, 1) + self.pushButton_plot_sunburst = QtWidgets.QPushButton(self.page_10) + self.pushButton_plot_sunburst.setEnabled(False) + self.pushButton_plot_sunburst.setObjectName("pushButton_plot_sunburst") + self.gridLayout_54.addWidget(self.pushButton_plot_sunburst, 4, 2, 1, 1) + self.label_172 = QtWidgets.QLabel(self.page_10) + self.label_172.setObjectName("label_172") + self.gridLayout_54.addWidget(self.label_172, 4, 0, 1, 1) + self.pushButton_plot_basic_sankey = QtWidgets.QPushButton(self.page_10) + self.pushButton_plot_basic_sankey.setEnabled(False) + self.pushButton_plot_basic_sankey.setObjectName("pushButton_plot_basic_sankey") + self.gridLayout_54.addWidget(self.pushButton_plot_basic_sankey, 5, 1, 1, 1) + self.label_173 = QtWidgets.QLabel(self.page_10) + self.label_173.setObjectName("label_173") + self.gridLayout_54.addWidget(self.label_173, 5, 0, 1, 1) + self.gridLayout_40.addLayout(self.gridLayout_54, 0, 0, 1, 1) + self.toolBox_4.addItem(self.page_10, "") + self.page_11 = QtWidgets.QWidget() + self.page_11.setGeometry(QtCore.QRect(0, 0, 660, 232)) + self.page_11.setObjectName("page_11") + self.gridLayout_34 = QtWidgets.QGridLayout(self.page_11) + self.gridLayout_34.setObjectName("gridLayout_34") + self.label_169 = QtWidgets.QLabel(self.page_11) + font = QtGui.QFont() + font.setBold(True) + font.setWeight(75) + self.label_169.setFont(font) + self.label_169.setObjectName("label_169") + self.gridLayout_34.addWidget(self.label_169, 6, 0, 1, 1) + self.label_137 = QtWidgets.QLabel(self.page_11) + font = QtGui.QFont() + font.setBold(True) + font.setWeight(75) + self.label_137.setFont(font) + self.label_137.setObjectName("label_137") + self.gridLayout_34.addWidget(self.label_137, 8, 0, 1, 1) + self.horizontalLayout_33 = QtWidgets.QHBoxLayout() + self.horizontalLayout_33.setObjectName("horizontalLayout_33") + self.label_107 = QtWidgets.QLabel(self.page_11) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Preferred) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.label_107.sizePolicy().hasHeightForWidth()) + self.label_107.setSizePolicy(sizePolicy) + self.label_107.setToolTip("") + self.label_107.setAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignVCenter) + self.label_107.setObjectName("label_107") + self.horizontalLayout_33.addWidget(self.label_107) + self.spinBox_basic_pca_label_font_size = QtWidgets.QSpinBox(self.page_11) + self.spinBox_basic_pca_label_font_size.setMinimum(1) + self.spinBox_basic_pca_label_font_size.setMaximum(999) + self.spinBox_basic_pca_label_font_size.setProperty("value", 10) + self.spinBox_basic_pca_label_font_size.setObjectName("spinBox_basic_pca_label_font_size") + self.horizontalLayout_33.addWidget(self.spinBox_basic_pca_label_font_size) + self.gridLayout_34.addLayout(self.horizontalLayout_33, 1, 1, 1, 1) + self.horizontalLayout_79 = QtWidgets.QHBoxLayout() + self.horizontalLayout_79.setObjectName("horizontalLayout_79") + self.checkBox_pca_if_adjust_pca_label = QtWidgets.QCheckBox(self.page_11) self.checkBox_pca_if_adjust_pca_label.setEnabled(False) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) @@ -793,20 +912,62 @@ def setupUi(self, metaX_main): sizePolicy.setHeightForWidth(self.checkBox_pca_if_adjust_pca_label.sizePolicy().hasHeightForWidth()) self.checkBox_pca_if_adjust_pca_label.setSizePolicy(sizePolicy) self.checkBox_pca_if_adjust_pca_label.setObjectName("checkBox_pca_if_adjust_pca_label") - self.horizontalLayout_34.addWidget(self.checkBox_pca_if_adjust_pca_label) - self.gridLayout_34.addLayout(self.horizontalLayout_34, 1, 2, 1, 1) + self.horizontalLayout_79.addWidget(self.checkBox_pca_if_adjust_pca_label) + self.gridLayout_34.addLayout(self.horizontalLayout_79, 3, 1, 1, 1) + self.label_122 = QtWidgets.QLabel(self.page_11) + font = QtGui.QFont() + font.setBold(True) + font.setWeight(75) + self.label_122.setFont(font) + self.label_122.setObjectName("label_122") + self.gridLayout_34.addWidget(self.label_122, 0, 0, 1, 1) + self.horizontalLayout_4 = QtWidgets.QHBoxLayout() + self.horizontalLayout_4.setObjectName("horizontalLayout_4") + self.label_118 = QtWidgets.QLabel(self.page_11) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Preferred) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.label_118.sizePolicy().hasHeightForWidth()) + self.label_118.setSizePolicy(sizePolicy) + self.label_118.setAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignVCenter) + self.label_118.setObjectName("label_118") + self.horizontalLayout_4.addWidget(self.label_118) + self.comboBox_beta_div_method = QtWidgets.QComboBox(self.page_11) + self.comboBox_beta_div_method.setEnabled(True) + self.comboBox_beta_div_method.setObjectName("comboBox_beta_div_method") + self.comboBox_beta_div_method.addItem("") + self.comboBox_beta_div_method.addItem("") + self.comboBox_beta_div_method.addItem("") + self.comboBox_beta_div_method.addItem("") + self.comboBox_beta_div_method.addItem("") + self.comboBox_beta_div_method.addItem("") + self.comboBox_beta_div_method.addItem("") + self.comboBox_beta_div_method.addItem("") + self.comboBox_beta_div_method.addItem("") + self.horizontalLayout_4.addWidget(self.comboBox_beta_div_method) + self.gridLayout_34.addLayout(self.horizontalLayout_4, 7, 2, 1, 1) + self.checkBox_basic_plot_number_plot_sample = QtWidgets.QCheckBox(self.page_11) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.checkBox_basic_plot_number_plot_sample.sizePolicy().hasHeightForWidth()) + self.checkBox_basic_plot_number_plot_sample.setSizePolicy(sizePolicy) + self.checkBox_basic_plot_number_plot_sample.setAcceptDrops(False) + self.checkBox_basic_plot_number_plot_sample.setToolTip("") + self.checkBox_basic_plot_number_plot_sample.setObjectName("checkBox_basic_plot_number_plot_sample") + self.gridLayout_34.addWidget(self.checkBox_basic_plot_number_plot_sample, 5, 1, 1, 1) self.horizontalLayout_32 = QtWidgets.QHBoxLayout() self.horizontalLayout_32.setObjectName("horizontalLayout_32") - self.label_94 = QtWidgets.QLabel(self.tab_12) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Preferred) + self.label_94 = QtWidgets.QLabel(self.page_11) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.label_94.sizePolicy().hasHeightForWidth()) self.label_94.setSizePolicy(sizePolicy) - self.label_94.setAlignment(QtCore.Qt.AlignCenter) + self.label_94.setAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignVCenter) self.label_94.setObjectName("label_94") self.horizontalLayout_32.addWidget(self.label_94) - self.spinBox_basic_pca_width = QtWidgets.QSpinBox(self.tab_12) + self.spinBox_basic_pca_width = QtWidgets.QSpinBox(self.page_11) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) @@ -816,16 +977,16 @@ def setupUi(self, metaX_main): self.spinBox_basic_pca_width.setProperty("value", 10) self.spinBox_basic_pca_width.setObjectName("spinBox_basic_pca_width") self.horizontalLayout_32.addWidget(self.spinBox_basic_pca_width) - self.label_101 = QtWidgets.QLabel(self.tab_12) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Preferred) + self.label_101 = QtWidgets.QLabel(self.page_11) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.label_101.sizePolicy().hasHeightForWidth()) self.label_101.setSizePolicy(sizePolicy) - self.label_101.setAlignment(QtCore.Qt.AlignCenter) + self.label_101.setAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignVCenter) self.label_101.setObjectName("label_101") self.horizontalLayout_32.addWidget(self.label_101) - self.spinBox_basic_pca_height = QtWidgets.QSpinBox(self.tab_12) + self.spinBox_basic_pca_height = QtWidgets.QSpinBox(self.page_11) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) @@ -835,327 +996,261 @@ def setupUi(self, metaX_main): self.spinBox_basic_pca_height.setProperty("value", 8) self.spinBox_basic_pca_height.setObjectName("spinBox_basic_pca_height") self.horizontalLayout_32.addWidget(self.spinBox_basic_pca_height) - self.label_159 = QtWidgets.QLabel(self.tab_12) - self.label_159.setAlignment(QtCore.Qt.AlignCenter) + self.gridLayout_34.addLayout(self.horizontalLayout_32, 0, 1, 1, 1) + self.horizontalLayout_3 = QtWidgets.QHBoxLayout() + self.horizontalLayout_3.setObjectName("horizontalLayout_3") + self.checkBox_corr_cluster = QtWidgets.QCheckBox(self.page_11) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.checkBox_corr_cluster.sizePolicy().hasHeightForWidth()) + self.checkBox_corr_cluster.setSizePolicy(sizePolicy) + self.checkBox_corr_cluster.setChecked(True) + self.checkBox_corr_cluster.setObjectName("checkBox_corr_cluster") + self.horizontalLayout_3.addWidget(self.checkBox_corr_cluster) + self.label_192 = QtWidgets.QLabel(self.page_11) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Preferred) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.label_192.sizePolicy().hasHeightForWidth()) + self.label_192.setSizePolicy(sizePolicy) + self.label_192.setObjectName("label_192") + self.horizontalLayout_3.addWidget(self.label_192) + self.comboBox_basic_corr_cmap = QtWidgets.QComboBox(self.page_11) + self.comboBox_basic_corr_cmap.setObjectName("comboBox_basic_corr_cmap") + self.horizontalLayout_3.addWidget(self.comboBox_basic_corr_cmap) + self.gridLayout_34.addLayout(self.horizontalLayout_3, 4, 1, 1, 1) + self.label_168 = QtWidgets.QLabel(self.page_11) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Preferred) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.label_168.sizePolicy().hasHeightForWidth()) + self.label_168.setSizePolicy(sizePolicy) + self.label_168.setMinimumSize(QtCore.QSize(150, 0)) + font = QtGui.QFont() + font.setBold(True) + font.setWeight(75) + self.label_168.setFont(font) + self.label_168.setObjectName("label_168") + self.gridLayout_34.addWidget(self.label_168, 4, 0, 1, 1) + self.label_167 = QtWidgets.QLabel(self.page_11) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Preferred) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.label_167.sizePolicy().hasHeightForWidth()) + self.label_167.setSizePolicy(sizePolicy) + font = QtGui.QFont() + font.setBold(True) + font.setWeight(75) + self.label_167.setFont(font) + self.label_167.setObjectName("label_167") + self.gridLayout_34.addWidget(self.label_167, 7, 0, 1, 1) + self.checkBox_box_if_show_fliers = QtWidgets.QCheckBox(self.page_11) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.checkBox_box_if_show_fliers.sizePolicy().hasHeightForWidth()) + self.checkBox_box_if_show_fliers.setSizePolicy(sizePolicy) + self.checkBox_box_if_show_fliers.setObjectName("checkBox_box_if_show_fliers") + self.gridLayout_34.addWidget(self.checkBox_box_if_show_fliers, 6, 2, 1, 1) + self.horizontalLayout_25 = QtWidgets.QHBoxLayout() + self.horizontalLayout_25.setObjectName("horizontalLayout_25") + self.label_159 = QtWidgets.QLabel(self.page_11) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Preferred) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.label_159.sizePolicy().hasHeightForWidth()) + self.label_159.setSizePolicy(sizePolicy) + self.label_159.setAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignVCenter) self.label_159.setObjectName("label_159") - self.horizontalLayout_32.addWidget(self.label_159) - self.spinBox_basic_legend_col_num = QtWidgets.QSpinBox(self.tab_12) + self.horizontalLayout_25.addWidget(self.label_159) + self.spinBox_basic_legend_col_num = QtWidgets.QSpinBox(self.page_11) self.spinBox_basic_legend_col_num.setMinimum(0) self.spinBox_basic_legend_col_num.setProperty("value", 1) self.spinBox_basic_legend_col_num.setObjectName("spinBox_basic_legend_col_num") - self.horizontalLayout_32.addWidget(self.spinBox_basic_legend_col_num) - self.gridLayout_34.addLayout(self.horizontalLayout_32, 0, 1, 1, 1) - self.horizontalLayout_25 = QtWidgets.QHBoxLayout() - self.horizontalLayout_25.setObjectName("horizontalLayout_25") - self.label_142 = QtWidgets.QLabel(self.tab_12) - self.label_142.setObjectName("label_142") - self.horizontalLayout_25.addWidget(self.label_142) - self.comboBox_sub_meta_pca = QtWidgets.QComboBox(self.tab_12) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) + self.horizontalLayout_25.addWidget(self.spinBox_basic_legend_col_num) + self.label_151 = QtWidgets.QLabel(self.page_11) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.comboBox_sub_meta_pca.sizePolicy().hasHeightForWidth()) - self.comboBox_sub_meta_pca.setSizePolicy(sizePolicy) - self.comboBox_sub_meta_pca.setObjectName("comboBox_sub_meta_pca") - self.comboBox_sub_meta_pca.addItem("") - self.horizontalLayout_25.addWidget(self.comboBox_sub_meta_pca) - self.label_151 = QtWidgets.QLabel(self.tab_12) - self.label_151.setAlignment(QtCore.Qt.AlignCenter) + sizePolicy.setHeightForWidth(self.label_151.sizePolicy().hasHeightForWidth()) + self.label_151.setSizePolicy(sizePolicy) + self.label_151.setAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignVCenter) self.label_151.setObjectName("label_151") self.horizontalLayout_25.addWidget(self.label_151) - self.comboBox_basic_theme = QtWidgets.QComboBox(self.tab_12) + self.comboBox_basic_theme = QtWidgets.QComboBox(self.page_11) self.comboBox_basic_theme.setEditable(False) self.comboBox_basic_theme.setObjectName("comboBox_basic_theme") self.horizontalLayout_25.addWidget(self.comboBox_basic_theme) self.gridLayout_34.addLayout(self.horizontalLayout_25, 0, 2, 1, 1) - self.horizontalLayout_33 = QtWidgets.QHBoxLayout() - self.horizontalLayout_33.setObjectName("horizontalLayout_33") - self.label_107 = QtWidgets.QLabel(self.tab_12) + self.line_15 = QtWidgets.QFrame(self.page_11) + self.line_15.setFrameShape(QtWidgets.QFrame.HLine) + self.line_15.setFrameShadow(QtWidgets.QFrame.Sunken) + self.line_15.setObjectName("line_15") + self.gridLayout_34.addWidget(self.line_15, 2, 1, 1, 2) + self.label_155 = QtWidgets.QLabel(self.page_11) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.label_107.sizePolicy().hasHeightForWidth()) - self.label_107.setSizePolicy(sizePolicy) - self.label_107.setToolTip("") - self.label_107.setAlignment(QtCore.Qt.AlignCenter) - self.label_107.setObjectName("label_107") - self.horizontalLayout_33.addWidget(self.label_107) - self.spinBox_basic_pca_label_font_size = QtWidgets.QSpinBox(self.tab_12) - self.spinBox_basic_pca_label_font_size.setMinimum(1) - self.spinBox_basic_pca_label_font_size.setMaximum(999) - self.spinBox_basic_pca_label_font_size.setProperty("value", 10) - self.spinBox_basic_pca_label_font_size.setObjectName("spinBox_basic_pca_label_font_size") - self.horizontalLayout_33.addWidget(self.spinBox_basic_pca_label_font_size) - self.label_116 = QtWidgets.QLabel(self.tab_12) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Preferred) + sizePolicy.setHeightForWidth(self.label_155.sizePolicy().hasHeightForWidth()) + self.label_155.setSizePolicy(sizePolicy) + font = QtGui.QFont() + font.setBold(True) + font.setWeight(75) + self.label_155.setFont(font) + self.label_155.setObjectName("label_155") + self.gridLayout_34.addWidget(self.label_155, 5, 0, 1, 1) + self.horizontalLayout_10 = QtWidgets.QHBoxLayout() + self.horizontalLayout_10.setObjectName("horizontalLayout_10") + self.label_117 = QtWidgets.QLabel(self.page_11) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Maximum) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.label_116.sizePolicy().hasHeightForWidth()) - self.label_116.setSizePolicy(sizePolicy) - self.label_116.setAlignment(QtCore.Qt.AlignCenter) - self.label_116.setObjectName("label_116") - self.horizontalLayout_33.addWidget(self.label_116) - self.doubleSpinBox_basic_pca_label_font_transparency = QtWidgets.QDoubleSpinBox(self.tab_12) - self.doubleSpinBox_basic_pca_label_font_transparency.setEnabled(False) + sizePolicy.setHeightForWidth(self.label_117.sizePolicy().hasHeightForWidth()) + self.label_117.setSizePolicy(sizePolicy) + self.label_117.setObjectName("label_117") + self.horizontalLayout_10.addWidget(self.label_117) + self.checkBox_alpha_div_plot_all_samples = QtWidgets.QCheckBox(self.page_11) + self.checkBox_alpha_div_plot_all_samples.setObjectName("checkBox_alpha_div_plot_all_samples") + self.horizontalLayout_10.addWidget(self.checkBox_alpha_div_plot_all_samples) + self.comboBox_alpha_div_method = QtWidgets.QComboBox(self.page_11) + self.comboBox_alpha_div_method.setEnabled(True) + self.comboBox_alpha_div_method.setObjectName("comboBox_alpha_div_method") + self.comboBox_alpha_div_method.addItem("") + self.comboBox_alpha_div_method.addItem("") + self.comboBox_alpha_div_method.addItem("") + self.comboBox_alpha_div_method.addItem("") + self.comboBox_alpha_div_method.addItem("") + self.comboBox_alpha_div_method.addItem("") + self.comboBox_alpha_div_method.addItem("") + self.comboBox_alpha_div_method.addItem("") + self.horizontalLayout_10.addWidget(self.comboBox_alpha_div_method) + self.gridLayout_34.addLayout(self.horizontalLayout_10, 7, 1, 1, 1) + self.horizontalLayout_34 = QtWidgets.QHBoxLayout() + self.horizontalLayout_34.setObjectName("horizontalLayout_34") + self.checkBox_pca_if_show_group_name_in_label = QtWidgets.QCheckBox(self.page_11) + self.checkBox_pca_if_show_group_name_in_label.setEnabled(True) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.doubleSpinBox_basic_pca_label_font_transparency.sizePolicy().hasHeightForWidth()) - self.doubleSpinBox_basic_pca_label_font_transparency.setSizePolicy(sizePolicy) - self.doubleSpinBox_basic_pca_label_font_transparency.setMaximum(1.0) - self.doubleSpinBox_basic_pca_label_font_transparency.setSingleStep(0.05) - self.doubleSpinBox_basic_pca_label_font_transparency.setProperty("value", 0.6) - self.doubleSpinBox_basic_pca_label_font_transparency.setObjectName("doubleSpinBox_basic_pca_label_font_transparency") - self.horizontalLayout_33.addWidget(self.doubleSpinBox_basic_pca_label_font_transparency) - self.label_160 = QtWidgets.QLabel(self.tab_12) - self.label_160.setAlignment(QtCore.Qt.AlignCenter) - self.label_160.setObjectName("label_160") - self.horizontalLayout_33.addWidget(self.label_160) - self.spinBox_basic_dot_size = QtWidgets.QSpinBox(self.tab_12) - self.spinBox_basic_dot_size.setMinimum(1) - self.spinBox_basic_dot_size.setMaximum(1000) - self.spinBox_basic_dot_size.setSingleStep(10) - self.spinBox_basic_dot_size.setProperty("value", 150) - self.spinBox_basic_dot_size.setObjectName("spinBox_basic_dot_size") - self.horizontalLayout_33.addWidget(self.spinBox_basic_dot_size) - self.gridLayout_34.addLayout(self.horizontalLayout_33, 1, 1, 1, 1) - self.gridLayout_26.addLayout(self.gridLayout_34, 1, 0, 1, 1) - self.gridLayout_40 = QtWidgets.QGridLayout() - self.gridLayout_40.setSpacing(6) - self.gridLayout_40.setObjectName("gridLayout_40") - self.pushButton_plot_pca_sns = QtWidgets.QPushButton(self.tab_12) - self.pushButton_plot_pca_sns.setEnabled(False) + sizePolicy.setHeightForWidth(self.checkBox_pca_if_show_group_name_in_label.sizePolicy().hasHeightForWidth()) + self.checkBox_pca_if_show_group_name_in_label.setSizePolicy(sizePolicy) + self.checkBox_pca_if_show_group_name_in_label.setStatusTip("") + self.checkBox_pca_if_show_group_name_in_label.setChecked(True) + self.checkBox_pca_if_show_group_name_in_label.setObjectName("checkBox_pca_if_show_group_name_in_label") + self.horizontalLayout_34.addWidget(self.checkBox_pca_if_show_group_name_in_label) + self.checkBox_pca_if_show_lable = QtWidgets.QCheckBox(self.page_11) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_plot_pca_sns.sizePolicy().hasHeightForWidth()) - self.pushButton_plot_pca_sns.setSizePolicy(sizePolicy) - self.pushButton_plot_pca_sns.setObjectName("pushButton_plot_pca_sns") - self.gridLayout_40.addWidget(self.pushButton_plot_pca_sns, 0, 1, 1, 1) - self.horizontalLayout_6 = QtWidgets.QHBoxLayout() - self.horizontalLayout_6.setObjectName("horizontalLayout_6") - self.checkBox_basic_plot_number_plot_sample = QtWidgets.QCheckBox(self.tab_12) - self.checkBox_basic_plot_number_plot_sample.setAcceptDrops(False) - self.checkBox_basic_plot_number_plot_sample.setToolTip("") - self.checkBox_basic_plot_number_plot_sample.setObjectName("checkBox_basic_plot_number_plot_sample") - self.horizontalLayout_6.addWidget(self.checkBox_basic_plot_number_plot_sample) - self.pushButton_basic_plot_number_bar = QtWidgets.QPushButton(self.tab_12) - self.pushButton_basic_plot_number_bar.setEnabled(False) - self.pushButton_basic_plot_number_bar.setObjectName("pushButton_basic_plot_number_bar") - self.horizontalLayout_6.addWidget(self.pushButton_basic_plot_number_bar) - self.gridLayout_40.addLayout(self.horizontalLayout_6, 2, 1, 1, 1) - self.comboBox_beta_div_method = QtWidgets.QComboBox(self.tab_12) - self.comboBox_beta_div_method.setEnabled(True) - self.comboBox_beta_div_method.setObjectName("comboBox_beta_div_method") - self.comboBox_beta_div_method.addItem("") - self.comboBox_beta_div_method.addItem("") - self.comboBox_beta_div_method.addItem("") - self.comboBox_beta_div_method.addItem("") - self.comboBox_beta_div_method.addItem("") - self.comboBox_beta_div_method.addItem("") - self.comboBox_beta_div_method.addItem("") - self.comboBox_beta_div_method.addItem("") - self.comboBox_beta_div_method.addItem("") - self.gridLayout_40.addWidget(self.comboBox_beta_div_method, 5, 1, 1, 1) - self.label_118 = QtWidgets.QLabel(self.tab_12) + sizePolicy.setHeightForWidth(self.checkBox_pca_if_show_lable.sizePolicy().hasHeightForWidth()) + self.checkBox_pca_if_show_lable.setSizePolicy(sizePolicy) + self.checkBox_pca_if_show_lable.setLayoutDirection(QtCore.Qt.LeftToRight) + self.checkBox_pca_if_show_lable.setObjectName("checkBox_pca_if_show_lable") + self.horizontalLayout_34.addWidget(self.checkBox_pca_if_show_lable) + self.gridLayout_34.addLayout(self.horizontalLayout_34, 1, 2, 1, 1) + self.horizontalLayout_63 = QtWidgets.QHBoxLayout() + self.horizontalLayout_63.setObjectName("horizontalLayout_63") + self.label_116 = QtWidgets.QLabel(self.page_11) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.label_118.sizePolicy().hasHeightForWidth()) - self.label_118.setSizePolicy(sizePolicy) - self.label_118.setAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignVCenter) - self.label_118.setObjectName("label_118") - self.gridLayout_40.addWidget(self.label_118, 5, 0, 1, 1) - self.label_137 = QtWidgets.QLabel(self.tab_12) - self.label_137.setObjectName("label_137") - self.gridLayout_40.addWidget(self.label_137, 6, 0, 1, 1) - self.label_117 = QtWidgets.QLabel(self.tab_12) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Maximum) + sizePolicy.setHeightForWidth(self.label_116.sizePolicy().hasHeightForWidth()) + self.label_116.setSizePolicy(sizePolicy) + self.label_116.setAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignVCenter) + self.label_116.setObjectName("label_116") + self.horizontalLayout_63.addWidget(self.label_116) + self.doubleSpinBox_basic_pca_label_font_transparency = QtWidgets.QDoubleSpinBox(self.page_11) + self.doubleSpinBox_basic_pca_label_font_transparency.setEnabled(False) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.label_117.sizePolicy().hasHeightForWidth()) - self.label_117.setSizePolicy(sizePolicy) - self.label_117.setObjectName("label_117") - self.gridLayout_40.addWidget(self.label_117, 4, 0, 1, 1) + sizePolicy.setHeightForWidth(self.doubleSpinBox_basic_pca_label_font_transparency.sizePolicy().hasHeightForWidth()) + self.doubleSpinBox_basic_pca_label_font_transparency.setSizePolicy(sizePolicy) + self.doubleSpinBox_basic_pca_label_font_transparency.setMaximum(1.0) + self.doubleSpinBox_basic_pca_label_font_transparency.setSingleStep(0.05) + self.doubleSpinBox_basic_pca_label_font_transparency.setProperty("value", 0.6) + self.doubleSpinBox_basic_pca_label_font_transparency.setObjectName("doubleSpinBox_basic_pca_label_font_transparency") + self.horizontalLayout_63.addWidget(self.doubleSpinBox_basic_pca_label_font_transparency) + self.label_160 = QtWidgets.QLabel(self.page_11) + self.label_160.setAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignVCenter) + self.label_160.setObjectName("label_160") + self.horizontalLayout_63.addWidget(self.label_160) + self.spinBox_basic_dot_size = QtWidgets.QSpinBox(self.page_11) + self.spinBox_basic_dot_size.setMinimum(1) + self.spinBox_basic_dot_size.setMaximum(1000) + self.spinBox_basic_dot_size.setSingleStep(10) + self.spinBox_basic_dot_size.setProperty("value", 150) + self.spinBox_basic_dot_size.setObjectName("spinBox_basic_dot_size") + self.horizontalLayout_63.addWidget(self.spinBox_basic_dot_size) + self.gridLayout_34.addLayout(self.horizontalLayout_63, 3, 2, 1, 1) self.horizontalLayout_20 = QtWidgets.QHBoxLayout() self.horizontalLayout_20.setObjectName("horizontalLayout_20") - self.checkBox_sunburst_show_all_lables = QtWidgets.QCheckBox(self.tab_12) + self.checkBox_sunburst_show_all_lables = QtWidgets.QCheckBox(self.page_11) self.checkBox_sunburst_show_all_lables.setEnabled(False) self.checkBox_sunburst_show_all_lables.setChecked(True) self.checkBox_sunburst_show_all_lables.setObjectName("checkBox_sunburst_show_all_lables") self.horizontalLayout_20.addWidget(self.checkBox_sunburst_show_all_lables) - self.pushButton_plot_sunburst = QtWidgets.QPushButton(self.tab_12) - self.pushButton_plot_sunburst.setEnabled(False) - self.pushButton_plot_sunburst.setObjectName("pushButton_plot_sunburst") - self.horizontalLayout_20.addWidget(self.pushButton_plot_sunburst) - self.gridLayout_40.addLayout(self.horizontalLayout_20, 6, 1, 1, 1) - self.label_121 = QtWidgets.QLabel(self.tab_12) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Preferred) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.label_121.sizePolicy().hasHeightForWidth()) - self.label_121.setSizePolicy(sizePolicy) - self.label_121.setObjectName("label_121") - self.gridLayout_40.addWidget(self.label_121, 0, 0, 1, 1) - self.pushButton_plot_pca_js = QtWidgets.QPushButton(self.tab_12) - self.pushButton_plot_pca_js.setEnabled(False) + self.gridLayout_34.addLayout(self.horizontalLayout_20, 8, 1, 1, 1) + self.checkBox_box_plot_samples = QtWidgets.QCheckBox(self.page_11) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_plot_pca_js.sizePolicy().hasHeightForWidth()) - self.pushButton_plot_pca_js.setSizePolicy(sizePolicy) - self.pushButton_plot_pca_js.setObjectName("pushButton_plot_pca_js") - self.gridLayout_40.addWidget(self.pushButton_plot_pca_js, 0, 2, 1, 1) - self.horizontalLayout_7 = QtWidgets.QHBoxLayout() - self.horizontalLayout_7.setObjectName("horizontalLayout_7") - self.checkBox_box_if_show_fliers = QtWidgets.QCheckBox(self.tab_12) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.checkBox_box_if_show_fliers.sizePolicy().hasHeightForWidth()) - self.checkBox_box_if_show_fliers.setSizePolicy(sizePolicy) - self.checkBox_box_if_show_fliers.setObjectName("checkBox_box_if_show_fliers") - self.horizontalLayout_7.addWidget(self.checkBox_box_if_show_fliers) - self.checkBox_box_plot_samples = QtWidgets.QCheckBox(self.tab_12) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.checkBox_box_plot_samples.sizePolicy().hasHeightForWidth()) self.checkBox_box_plot_samples.setSizePolicy(sizePolicy) self.checkBox_box_plot_samples.setObjectName("checkBox_box_plot_samples") - self.horizontalLayout_7.addWidget(self.checkBox_box_plot_samples) - self.pushButton_plot_box_sns = QtWidgets.QPushButton(self.tab_12) - self.pushButton_plot_box_sns.setEnabled(False) - self.pushButton_plot_box_sns.setObjectName("pushButton_plot_box_sns") - self.horizontalLayout_7.addWidget(self.pushButton_plot_box_sns) - self.gridLayout_40.addLayout(self.horizontalLayout_7, 2, 2, 1, 1) + self.gridLayout_34.addWidget(self.checkBox_box_plot_samples, 6, 1, 1, 1) + self.label_179 = QtWidgets.QLabel(self.page_11) + font = QtGui.QFont() + font.setBold(True) + font.setWeight(75) + self.label_179.setFont(font) + self.label_179.setObjectName("label_179") + self.gridLayout_34.addWidget(self.label_179, 3, 0, 1, 1) self.horizontalLayout_5 = QtWidgets.QHBoxLayout() self.horizontalLayout_5.setObjectName("horizontalLayout_5") - self.checkBox_corr_cluster = QtWidgets.QCheckBox(self.tab_12) - self.checkBox_corr_cluster.setChecked(True) - self.checkBox_corr_cluster.setObjectName("checkBox_corr_cluster") - self.horizontalLayout_5.addWidget(self.checkBox_corr_cluster) - self.label_129 = QtWidgets.QLabel(self.tab_12) + self.label_129 = QtWidgets.QLabel(self.page_11) self.label_129.setObjectName("label_129") self.horizontalLayout_5.addWidget(self.label_129) - self.checkBox_corr_show_all_labels_x = QtWidgets.QCheckBox(self.tab_12) + self.checkBox_corr_show_all_labels_x = QtWidgets.QCheckBox(self.page_11) self.checkBox_corr_show_all_labels_x.setObjectName("checkBox_corr_show_all_labels_x") self.horizontalLayout_5.addWidget(self.checkBox_corr_show_all_labels_x) - self.checkBox_corr_show_all_labels_y = QtWidgets.QCheckBox(self.tab_12) + self.checkBox_corr_show_all_labels_y = QtWidgets.QCheckBox(self.page_11) self.checkBox_corr_show_all_labels_y.setObjectName("checkBox_corr_show_all_labels_y") self.horizontalLayout_5.addWidget(self.checkBox_corr_show_all_labels_y) - self.gridLayout_40.addLayout(self.horizontalLayout_5, 1, 1, 1, 1) - self.label_155 = QtWidgets.QLabel(self.tab_12) - self.label_155.setObjectName("label_155") - self.gridLayout_40.addWidget(self.label_155, 2, 0, 1, 1) - self.pushButton_plot_corr = QtWidgets.QPushButton(self.tab_12) - self.pushButton_plot_corr.setEnabled(False) - self.pushButton_plot_corr.setObjectName("pushButton_plot_corr") - self.gridLayout_40.addWidget(self.pushButton_plot_corr, 1, 2, 1, 1) - self.pushButton_plot_alpha_div = QtWidgets.QPushButton(self.tab_12) - self.pushButton_plot_alpha_div.setEnabled(False) - self.pushButton_plot_alpha_div.setObjectName("pushButton_plot_alpha_div") - self.gridLayout_40.addWidget(self.pushButton_plot_alpha_div, 4, 2, 1, 1) - self.pushButton_plot_beta_div = QtWidgets.QPushButton(self.tab_12) - self.pushButton_plot_beta_div.setEnabled(False) - self.pushButton_plot_beta_div.setObjectName("pushButton_plot_beta_div") - self.gridLayout_40.addWidget(self.pushButton_plot_beta_div, 5, 2, 1, 1) + self.gridLayout_34.addLayout(self.horizontalLayout_5, 4, 2, 1, 1) + self.toolBox_4.addItem(self.page_11, "") + self.gridLayout_26.addWidget(self.toolBox_4, 2, 0, 1, 1) self.line_10 = QtWidgets.QFrame(self.tab_12) self.line_10.setFrameShape(QtWidgets.QFrame.HLine) self.line_10.setFrameShadow(QtWidgets.QFrame.Sunken) self.line_10.setObjectName("line_10") - self.gridLayout_40.addWidget(self.line_10, 3, 0, 1, 3) - self.label_119 = QtWidgets.QLabel(self.tab_12) - self.label_119.setObjectName("label_119") - self.gridLayout_40.addWidget(self.label_119, 1, 0, 1, 1) - self.horizontalLayout_10 = QtWidgets.QHBoxLayout() - self.horizontalLayout_10.setObjectName("horizontalLayout_10") - self.checkBox_alpha_div_plot_all_samples = QtWidgets.QCheckBox(self.tab_12) - self.checkBox_alpha_div_plot_all_samples.setObjectName("checkBox_alpha_div_plot_all_samples") - self.horizontalLayout_10.addWidget(self.checkBox_alpha_div_plot_all_samples) - self.comboBox_alpha_div_method = QtWidgets.QComboBox(self.tab_12) - self.comboBox_alpha_div_method.setEnabled(True) - self.comboBox_alpha_div_method.setObjectName("comboBox_alpha_div_method") - self.comboBox_alpha_div_method.addItem("") - self.comboBox_alpha_div_method.addItem("") - self.comboBox_alpha_div_method.addItem("") - self.comboBox_alpha_div_method.addItem("") - self.comboBox_alpha_div_method.addItem("") - self.comboBox_alpha_div_method.addItem("") - self.comboBox_alpha_div_method.addItem("") - self.comboBox_alpha_div_method.addItem("") - self.horizontalLayout_10.addWidget(self.comboBox_alpha_div_method) - self.gridLayout_40.addLayout(self.horizontalLayout_10, 4, 1, 1, 1) - self.horizontalLayout_47 = QtWidgets.QHBoxLayout() - self.horizontalLayout_47.setObjectName("horizontalLayout_47") - self.pushButton_plot_basic_treemap = QtWidgets.QPushButton(self.tab_12) - self.pushButton_plot_basic_treemap.setEnabled(False) - self.pushButton_plot_basic_treemap.setObjectName("pushButton_plot_basic_treemap") - self.horizontalLayout_47.addWidget(self.pushButton_plot_basic_treemap) - self.pushButton_plot_basic_sankey = QtWidgets.QPushButton(self.tab_12) - self.pushButton_plot_basic_sankey.setEnabled(False) - self.pushButton_plot_basic_sankey.setObjectName("pushButton_plot_basic_sankey") - self.horizontalLayout_47.addWidget(self.pushButton_plot_basic_sankey) - self.gridLayout_40.addLayout(self.horizontalLayout_47, 6, 2, 1, 1) - self.gridLayout_26.addLayout(self.gridLayout_40, 2, 0, 1, 1) + self.gridLayout_26.addWidget(self.line_10, 1, 0, 1, 1) self.tabWidget_4.addTab(self.tab_12, "") self.tab_13 = QtWidgets.QWidget() self.tab_13.setObjectName("tab_13") self.gridLayout_23 = QtWidgets.QGridLayout(self.tab_13) self.gridLayout_23.setObjectName("gridLayout_23") - self.radioButton_basic_heatmap_sample = QtWidgets.QRadioButton(self.tab_13) - self.radioButton_basic_heatmap_sample.setObjectName("radioButton_basic_heatmap_sample") - self.gridLayout_23.addWidget(self.radioButton_basic_heatmap_sample, 2, 0, 1, 1) - self.gridLayout_39 = QtWidgets.QGridLayout() - self.gridLayout_39.setObjectName("gridLayout_39") - self.pushButton_basic_heatmap_get_table = QtWidgets.QPushButton(self.tab_13) - self.pushButton_basic_heatmap_get_table.setEnabled(False) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Preferred) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_basic_heatmap_get_table.sizePolicy().hasHeightForWidth()) - self.pushButton_basic_heatmap_get_table.setSizePolicy(sizePolicy) - self.pushButton_basic_heatmap_get_table.setObjectName("pushButton_basic_heatmap_get_table") - self.gridLayout_39.addWidget(self.pushButton_basic_heatmap_get_table, 2, 1, 1, 1) - self.pushButton_basic_heatmap_sankey_plot = QtWidgets.QPushButton(self.tab_13) - self.pushButton_basic_heatmap_sankey_plot.setEnabled(False) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Preferred) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_basic_heatmap_sankey_plot.sizePolicy().hasHeightForWidth()) - self.pushButton_basic_heatmap_sankey_plot.setSizePolicy(sizePolicy) - self.pushButton_basic_heatmap_sankey_plot.setObjectName("pushButton_basic_heatmap_sankey_plot") - self.gridLayout_39.addWidget(self.pushButton_basic_heatmap_sankey_plot, 2, 0, 1, 1) - self.pushButton_basic_bar_plot = QtWidgets.QPushButton(self.tab_13) - self.pushButton_basic_bar_plot.setEnabled(False) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Preferred) + self.label_34 = QtWidgets.QLabel(self.tab_13) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_basic_bar_plot.sizePolicy().hasHeightForWidth()) - self.pushButton_basic_bar_plot.setSizePolicy(sizePolicy) - self.pushButton_basic_bar_plot.setObjectName("pushButton_basic_bar_plot") - self.gridLayout_39.addWidget(self.pushButton_basic_bar_plot, 1, 1, 1, 1) - self.comboBox_3dbar_sub_meta = QtWidgets.QComboBox(self.tab_13) - self.comboBox_3dbar_sub_meta.setObjectName("comboBox_3dbar_sub_meta") - self.gridLayout_39.addWidget(self.comboBox_3dbar_sub_meta, 0, 1, 1, 1) - self.pushButton_basic_heatmap_plot = QtWidgets.QPushButton(self.tab_13) - self.pushButton_basic_heatmap_plot.setEnabled(False) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Preferred) + sizePolicy.setHeightForWidth(self.label_34.sizePolicy().hasHeightForWidth()) + self.label_34.setSizePolicy(sizePolicy) + self.label_34.setObjectName("label_34") + self.gridLayout_23.addWidget(self.label_34, 6, 0, 1, 1) + self.pushButton_basic_heatmap_add_top = QtWidgets.QPushButton(self.tab_13) + self.pushButton_basic_heatmap_add_top.setEnabled(False) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_basic_heatmap_plot.sizePolicy().hasHeightForWidth()) - self.pushButton_basic_heatmap_plot.setSizePolicy(sizePolicy) - self.pushButton_basic_heatmap_plot.setObjectName("pushButton_basic_heatmap_plot") - self.gridLayout_39.addWidget(self.pushButton_basic_heatmap_plot, 1, 0, 1, 1) - self.label_164 = QtWidgets.QLabel(self.tab_13) - self.label_164.setObjectName("label_164") - self.gridLayout_39.addWidget(self.label_164, 0, 0, 1, 1) - self.gridLayout_23.addLayout(self.gridLayout_39, 6, 9, 1, 1) - self.line_8 = QtWidgets.QFrame(self.tab_13) - self.line_8.setFrameShape(QtWidgets.QFrame.VLine) - self.line_8.setFrameShadow(QtWidgets.QFrame.Sunken) - self.line_8.setObjectName("line_8") - self.gridLayout_23.addWidget(self.line_8, 0, 6, 7, 1) + sizePolicy.setHeightForWidth(self.pushButton_basic_heatmap_add_top.sizePolicy().hasHeightForWidth()) + self.pushButton_basic_heatmap_add_top.setSizePolicy(sizePolicy) + self.pushButton_basic_heatmap_add_top.setObjectName("pushButton_basic_heatmap_add_top") + self.gridLayout_23.addWidget(self.pushButton_basic_heatmap_add_top, 6, 5, 1, 1) + self.radioButton_basic_heatmap_sample = QtWidgets.QRadioButton(self.tab_13) + self.radioButton_basic_heatmap_sample.setObjectName("radioButton_basic_heatmap_sample") + self.gridLayout_23.addWidget(self.radioButton_basic_heatmap_sample, 3, 0, 1, 1) self.horizontalLayout_26 = QtWidgets.QHBoxLayout() self.horizontalLayout_26.setObjectName("horizontalLayout_26") self.checkBox_basic_heatmap_in_condition = QtWidgets.QCheckBox(self.tab_13) @@ -1182,83 +1277,23 @@ def setupUi(self, metaX_main): self.comboBox_basic_heatmap_condition_group.setObjectName("comboBox_basic_heatmap_condition_group") self.horizontalLayout_67.addWidget(self.comboBox_basic_heatmap_condition_group) self.horizontalLayout_26.addLayout(self.horizontalLayout_67) - self.gridLayout_23.addLayout(self.horizontalLayout_26, 1, 1, 1, 2) + self.gridLayout_23.addLayout(self.horizontalLayout_26, 2, 1, 1, 2) self.verticalLayout_basic_heatmap_sample = QtWidgets.QVBoxLayout() self.verticalLayout_basic_heatmap_sample.setObjectName("verticalLayout_basic_heatmap_sample") - self.gridLayout_23.addLayout(self.verticalLayout_basic_heatmap_sample, 2, 1, 1, 5) - self.label_34 = QtWidgets.QLabel(self.tab_13) - self.label_34.setObjectName("label_34") - self.gridLayout_23.addWidget(self.label_34, 4, 0, 1, 1) - self.pushButton_basic_heatmap_add = QtWidgets.QPushButton(self.tab_13) - self.pushButton_basic_heatmap_add.setEnabled(False) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_basic_heatmap_add.sizePolicy().hasHeightForWidth()) - self.pushButton_basic_heatmap_add.setSizePolicy(sizePolicy) - self.pushButton_basic_heatmap_add.setObjectName("pushButton_basic_heatmap_add") - self.gridLayout_23.addWidget(self.pushButton_basic_heatmap_add, 3, 5, 1, 1) - self.comboBox_basic_heatmap_selection_list = QtWidgets.QComboBox(self.tab_13) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.comboBox_basic_heatmap_selection_list.sizePolicy().hasHeightForWidth()) - self.comboBox_basic_heatmap_selection_list.setSizePolicy(sizePolicy) - self.comboBox_basic_heatmap_selection_list.setObjectName("comboBox_basic_heatmap_selection_list") - self.gridLayout_23.addWidget(self.comboBox_basic_heatmap_selection_list, 3, 1, 1, 4) - self.horizontalLayout_3 = QtWidgets.QHBoxLayout() - self.horizontalLayout_3.setObjectName("horizontalLayout_3") - self.label_35 = QtWidgets.QLabel(self.tab_13) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.label_35.sizePolicy().hasHeightForWidth()) - self.label_35.setSizePolicy(sizePolicy) - self.label_35.setObjectName("label_35") - self.horizontalLayout_3.addWidget(self.label_35) - self.label_33 = QtWidgets.QLabel(self.tab_13) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Preferred) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.label_33.sizePolicy().hasHeightForWidth()) - self.label_33.setSizePolicy(sizePolicy) - self.label_33.setObjectName("label_33") - self.horizontalLayout_3.addWidget(self.label_33) - self.label_108 = QtWidgets.QLabel(self.tab_13) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Preferred) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.label_108.sizePolicy().hasHeightForWidth()) - self.label_108.setSizePolicy(sizePolicy) - self.label_108.setObjectName("label_108") - self.horizontalLayout_3.addWidget(self.label_108) - self.gridLayout_23.addLayout(self.horizontalLayout_3, 1, 9, 1, 1) - self.horizontalLayout_4 = QtWidgets.QHBoxLayout() - self.horizontalLayout_4.setObjectName("horizontalLayout_4") - self.spinBox_basic_heatmap_width = QtWidgets.QSpinBox(self.tab_13) - self.spinBox_basic_heatmap_width.setMinimum(1) - self.spinBox_basic_heatmap_width.setMaximum(200) - self.spinBox_basic_heatmap_width.setProperty("value", 16) - self.spinBox_basic_heatmap_width.setObjectName("spinBox_basic_heatmap_width") - self.horizontalLayout_4.addWidget(self.spinBox_basic_heatmap_width) - self.spinBox_basic_heatmap_height = QtWidgets.QSpinBox(self.tab_13) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.spinBox_basic_heatmap_height.sizePolicy().hasHeightForWidth()) - self.spinBox_basic_heatmap_height.setSizePolicy(sizePolicy) - self.spinBox_basic_heatmap_height.setMinimum(1) - self.spinBox_basic_heatmap_height.setMaximum(200) - self.spinBox_basic_heatmap_height.setProperty("value", 9) - self.spinBox_basic_heatmap_height.setObjectName("spinBox_basic_heatmap_height") - self.horizontalLayout_4.addWidget(self.spinBox_basic_heatmap_height) - self.spinBox_basic_heatmap_label_font_size = QtWidgets.QSpinBox(self.tab_13) - self.spinBox_basic_heatmap_label_font_size.setMinimum(1) - self.spinBox_basic_heatmap_label_font_size.setMaximum(999) - self.spinBox_basic_heatmap_label_font_size.setProperty("value", 10) - self.spinBox_basic_heatmap_label_font_size.setObjectName("spinBox_basic_heatmap_label_font_size") - self.horizontalLayout_4.addWidget(self.spinBox_basic_heatmap_label_font_size) - self.gridLayout_23.addLayout(self.horizontalLayout_4, 2, 9, 1, 1) + self.gridLayout_23.addLayout(self.verticalLayout_basic_heatmap_sample, 3, 1, 1, 5) + self.line_12 = QtWidgets.QFrame(self.tab_13) + self.line_12.setFrameShape(QtWidgets.QFrame.HLine) + self.line_12.setFrameShadow(QtWidgets.QFrame.Sunken) + self.line_12.setObjectName("line_12") + self.gridLayout_23.addWidget(self.line_12, 4, 0, 1, 6) + self.label_32 = QtWidgets.QLabel(self.tab_13) + self.label_32.setObjectName("label_32") + self.gridLayout_23.addWidget(self.label_32, 5, 0, 1, 1) + self.line_8 = QtWidgets.QFrame(self.tab_13) + self.line_8.setFrameShape(QtWidgets.QFrame.HLine) + self.line_8.setFrameShadow(QtWidgets.QFrame.Sunken) + self.line_8.setObjectName("line_8") + self.gridLayout_23.addWidget(self.line_8, 1, 0, 1, 6) self.horizontalLayout_29 = QtWidgets.QHBoxLayout() self.horizontalLayout_29.setObjectName("horizontalLayout_29") self.label_67 = QtWidgets.QLabel(self.tab_13) @@ -1306,72 +1341,249 @@ def setupUi(self, metaX_main): self.checkBox_basic_heatmap_top_filtered = QtWidgets.QCheckBox(self.tab_13) self.checkBox_basic_heatmap_top_filtered.setObjectName("checkBox_basic_heatmap_top_filtered") self.horizontalLayout_29.addWidget(self.checkBox_basic_heatmap_top_filtered) - self.gridLayout_23.addLayout(self.horizontalLayout_29, 4, 1, 1, 4) - self.verticalLayout = QtWidgets.QVBoxLayout() - self.verticalLayout.setObjectName("verticalLayout") - self.pushButton_basic_heatmap_drop_item = QtWidgets.QPushButton(self.tab_13) - self.pushButton_basic_heatmap_drop_item.setEnabled(False) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) + self.gridLayout_23.addLayout(self.horizontalLayout_29, 6, 1, 1, 4) + self.horizontalLayout_28 = QtWidgets.QHBoxLayout() + self.horizontalLayout_28.setObjectName("horizontalLayout_28") + self.label_80 = QtWidgets.QLabel(self.tab_13) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_basic_heatmap_drop_item.sizePolicy().hasHeightForWidth()) - self.pushButton_basic_heatmap_drop_item.setSizePolicy(sizePolicy) - self.pushButton_basic_heatmap_drop_item.setObjectName("pushButton_basic_heatmap_drop_item") - self.verticalLayout.addWidget(self.pushButton_basic_heatmap_drop_item) - self.pushButton_basic_heatmap_clean_list = QtWidgets.QPushButton(self.tab_13) - self.pushButton_basic_heatmap_clean_list.setEnabled(False) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHeightForWidth(self.label_80.sizePolicy().hasHeightForWidth()) + self.label_80.setSizePolicy(sizePolicy) + self.label_80.setObjectName("label_80") + self.horizontalLayout_28.addWidget(self.label_80) + self.comboBox_basic_table = QtWidgets.QComboBox(self.tab_13) + self.comboBox_basic_table.setEnabled(False) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_basic_heatmap_clean_list.sizePolicy().hasHeightForWidth()) + sizePolicy.setHeightForWidth(self.comboBox_basic_table.sizePolicy().hasHeightForWidth()) + self.comboBox_basic_table.setSizePolicy(sizePolicy) + self.comboBox_basic_table.setObjectName("comboBox_basic_table") + self.comboBox_basic_table.addItem("") + self.comboBox_basic_table.addItem("") + self.comboBox_basic_table.addItem("") + self.comboBox_basic_table.addItem("") + self.horizontalLayout_28.addWidget(self.comboBox_basic_table) + self.label_144 = QtWidgets.QLabel(self.tab_13) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Preferred) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.label_144.sizePolicy().hasHeightForWidth()) + self.label_144.setSizePolicy(sizePolicy) + self.label_144.setObjectName("label_144") + self.horizontalLayout_28.addWidget(self.label_144) + self.comboBox_basic_heatmap_meta = QtWidgets.QComboBox(self.tab_13) + self.comboBox_basic_heatmap_meta.setObjectName("comboBox_basic_heatmap_meta") + self.horizontalLayout_28.addWidget(self.comboBox_basic_heatmap_meta) + self.label_164 = QtWidgets.QLabel(self.tab_13) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Preferred) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.label_164.sizePolicy().hasHeightForWidth()) + self.label_164.setSizePolicy(sizePolicy) + self.label_164.setObjectName("label_164") + self.horizontalLayout_28.addWidget(self.label_164) + self.comboBox_3dbar_sub_meta = QtWidgets.QComboBox(self.tab_13) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.comboBox_3dbar_sub_meta.sizePolicy().hasHeightForWidth()) + self.comboBox_3dbar_sub_meta.setSizePolicy(sizePolicy) + self.comboBox_3dbar_sub_meta.setObjectName("comboBox_3dbar_sub_meta") + self.horizontalLayout_28.addWidget(self.comboBox_3dbar_sub_meta) + self.gridLayout_23.addLayout(self.horizontalLayout_28, 0, 0, 1, 3) + self.radioButton_basic_heatmap_group = QtWidgets.QRadioButton(self.tab_13) + self.radioButton_basic_heatmap_group.setChecked(True) + self.radioButton_basic_heatmap_group.setObjectName("radioButton_basic_heatmap_group") + self.gridLayout_23.addWidget(self.radioButton_basic_heatmap_group, 2, 0, 1, 1) + self.pushButton_basic_heatmap_add = QtWidgets.QPushButton(self.tab_13) + self.pushButton_basic_heatmap_add.setEnabled(False) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.pushButton_basic_heatmap_add.sizePolicy().hasHeightForWidth()) + self.pushButton_basic_heatmap_add.setSizePolicy(sizePolicy) + self.pushButton_basic_heatmap_add.setObjectName("pushButton_basic_heatmap_add") + self.gridLayout_23.addWidget(self.pushButton_basic_heatmap_add, 5, 5, 1, 1) + self.listWidget_list_for_ploting = QtWidgets.QListWidget(self.tab_13) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.MinimumExpanding) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.listWidget_list_for_ploting.sizePolicy().hasHeightForWidth()) + self.listWidget_list_for_ploting.setSizePolicy(sizePolicy) + self.listWidget_list_for_ploting.setObjectName("listWidget_list_for_ploting") + self.gridLayout_23.addWidget(self.listWidget_list_for_ploting, 7, 1, 2, 5) + self.comboBox_basic_heatmap_selection_list = QtWidgets.QComboBox(self.tab_13) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.comboBox_basic_heatmap_selection_list.sizePolicy().hasHeightForWidth()) + self.comboBox_basic_heatmap_selection_list.setSizePolicy(sizePolicy) + self.comboBox_basic_heatmap_selection_list.setObjectName("comboBox_basic_heatmap_selection_list") + self.gridLayout_23.addWidget(self.comboBox_basic_heatmap_selection_list, 5, 1, 1, 4) + self.verticalLayout = QtWidgets.QVBoxLayout() + self.verticalLayout.setObjectName("verticalLayout") + self.pushButton_basic_heatmap_drop_item = QtWidgets.QPushButton(self.tab_13) + self.pushButton_basic_heatmap_drop_item.setEnabled(False) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Preferred) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.pushButton_basic_heatmap_drop_item.sizePolicy().hasHeightForWidth()) + self.pushButton_basic_heatmap_drop_item.setSizePolicy(sizePolicy) + self.pushButton_basic_heatmap_drop_item.setObjectName("pushButton_basic_heatmap_drop_item") + self.verticalLayout.addWidget(self.pushButton_basic_heatmap_drop_item) + self.pushButton_basic_heatmap_clean_list = QtWidgets.QPushButton(self.tab_13) + self.pushButton_basic_heatmap_clean_list.setEnabled(False) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Preferred) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.pushButton_basic_heatmap_clean_list.sizePolicy().hasHeightForWidth()) self.pushButton_basic_heatmap_clean_list.setSizePolicy(sizePolicy) self.pushButton_basic_heatmap_clean_list.setObjectName("pushButton_basic_heatmap_clean_list") self.verticalLayout.addWidget(self.pushButton_basic_heatmap_clean_list) self.pushButton_basic_heatmap_add_a_list = QtWidgets.QPushButton(self.tab_13) self.pushButton_basic_heatmap_add_a_list.setEnabled(False) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.pushButton_basic_heatmap_add_a_list.sizePolicy().hasHeightForWidth()) self.pushButton_basic_heatmap_add_a_list.setSizePolicy(sizePolicy) self.pushButton_basic_heatmap_add_a_list.setObjectName("pushButton_basic_heatmap_add_a_list") self.verticalLayout.addWidget(self.pushButton_basic_heatmap_add_a_list) - self.gridLayout_23.addLayout(self.verticalLayout, 5, 0, 2, 1) - self.label_145 = QtWidgets.QLabel(self.tab_13) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Maximum) + self.gridLayout_23.addLayout(self.verticalLayout, 7, 0, 2, 1) + self.verticalLayout_basic_heatmap_group = QtWidgets.QVBoxLayout() + self.verticalLayout_basic_heatmap_group.setObjectName("verticalLayout_basic_heatmap_group") + self.gridLayout_23.addLayout(self.verticalLayout_basic_heatmap_group, 2, 3, 1, 3) + self.toolBox = QtWidgets.QToolBox(self.tab_13) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.label_145.sizePolicy().hasHeightForWidth()) - self.label_145.setSizePolicy(sizePolicy) - self.label_145.setObjectName("label_145") - self.gridLayout_23.addWidget(self.label_145, 0, 9, 1, 1) - self.gridLayout_41 = QtWidgets.QGridLayout() + sizePolicy.setHeightForWidth(self.toolBox.sizePolicy().hasHeightForWidth()) + self.toolBox.setSizePolicy(sizePolicy) + self.toolBox.setMinimumSize(QtCore.QSize(0, 260)) + self.toolBox.setMaximumSize(QtCore.QSize(16777215, 400)) + self.toolBox.setObjectName("toolBox") + self.page_7 = QtWidgets.QWidget() + self.page_7.setGeometry(QtCore.QRect(0, 0, 888, 206)) + self.page_7.setObjectName("page_7") + self.gridLayout_46 = QtWidgets.QGridLayout(self.page_7) + self.gridLayout_46.setObjectName("gridLayout_46") + self.gridLayout_39 = QtWidgets.QGridLayout() + self.gridLayout_39.setObjectName("gridLayout_39") + self.pushButton_basic_heatmap_get_table = QtWidgets.QPushButton(self.page_7) + self.pushButton_basic_heatmap_get_table.setEnabled(False) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Preferred) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.pushButton_basic_heatmap_get_table.sizePolicy().hasHeightForWidth()) + self.pushButton_basic_heatmap_get_table.setSizePolicy(sizePolicy) + self.pushButton_basic_heatmap_get_table.setObjectName("pushButton_basic_heatmap_get_table") + self.gridLayout_39.addWidget(self.pushButton_basic_heatmap_get_table, 2, 1, 1, 1) + self.pushButton_basic_heatmap_sankey_plot = QtWidgets.QPushButton(self.page_7) + self.pushButton_basic_heatmap_sankey_plot.setEnabled(False) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.pushButton_basic_heatmap_sankey_plot.sizePolicy().hasHeightForWidth()) + self.pushButton_basic_heatmap_sankey_plot.setSizePolicy(sizePolicy) + self.pushButton_basic_heatmap_sankey_plot.setObjectName("pushButton_basic_heatmap_sankey_plot") + self.gridLayout_39.addWidget(self.pushButton_basic_heatmap_sankey_plot, 2, 0, 1, 1) + self.pushButton_basic_bar_plot = QtWidgets.QPushButton(self.page_7) + self.pushButton_basic_bar_plot.setEnabled(False) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.pushButton_basic_bar_plot.sizePolicy().hasHeightForWidth()) + self.pushButton_basic_bar_plot.setSizePolicy(sizePolicy) + self.pushButton_basic_bar_plot.setObjectName("pushButton_basic_bar_plot") + self.gridLayout_39.addWidget(self.pushButton_basic_bar_plot, 1, 1, 1, 1) + self.pushButton_basic_heatmap_plot = QtWidgets.QPushButton(self.page_7) + self.pushButton_basic_heatmap_plot.setEnabled(False) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.pushButton_basic_heatmap_plot.sizePolicy().hasHeightForWidth()) + self.pushButton_basic_heatmap_plot.setSizePolicy(sizePolicy) + self.pushButton_basic_heatmap_plot.setObjectName("pushButton_basic_heatmap_plot") + self.gridLayout_39.addWidget(self.pushButton_basic_heatmap_plot, 1, 0, 1, 1) + self.gridLayout_46.addLayout(self.gridLayout_39, 0, 0, 1, 1) + self.toolBox.addItem(self.page_7, "") + self.page_6 = QtWidgets.QWidget() + self.page_6.setGeometry(QtCore.QRect(0, 0, 888, 150)) + self.page_6.setObjectName("page_6") + self.gridLayout_41 = QtWidgets.QGridLayout(self.page_6) self.gridLayout_41.setObjectName("gridLayout_41") - self.horizontalLayout_31 = QtWidgets.QHBoxLayout() - self.horizontalLayout_31.setObjectName("horizontalLayout_31") - self.label_13 = QtWidgets.QLabel(self.tab_13) - self.label_13.setLayoutDirection(QtCore.Qt.LeftToRight) - self.label_13.setLocale(QtCore.QLocale(QtCore.QLocale.Chinese, QtCore.QLocale.China)) - self.label_13.setAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignVCenter) - self.label_13.setObjectName("label_13") - self.horizontalLayout_31.addWidget(self.label_13) - self.comboBox_basic_hetatmap_theme = QtWidgets.QComboBox(self.tab_13) + self.gridLayout_70 = QtWidgets.QGridLayout() + self.gridLayout_70.setObjectName("gridLayout_70") + self.horizontalLayout_83 = QtWidgets.QHBoxLayout() + self.horizontalLayout_83.setObjectName("horizontalLayout_83") + self.label_35 = QtWidgets.QLabel(self.page_6) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.label_35.sizePolicy().hasHeightForWidth()) + self.label_35.setSizePolicy(sizePolicy) + self.label_35.setAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignVCenter) + self.label_35.setObjectName("label_35") + self.horizontalLayout_83.addWidget(self.label_35) + self.spinBox_basic_heatmap_width = QtWidgets.QSpinBox(self.page_6) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.comboBox_basic_hetatmap_theme.sizePolicy().hasHeightForWidth()) - self.comboBox_basic_hetatmap_theme.setSizePolicy(sizePolicy) - self.comboBox_basic_hetatmap_theme.setObjectName("comboBox_basic_hetatmap_theme") - self.horizontalLayout_31.addWidget(self.comboBox_basic_hetatmap_theme) - self.label_31 = QtWidgets.QLabel(self.tab_13) + sizePolicy.setHeightForWidth(self.spinBox_basic_heatmap_width.sizePolicy().hasHeightForWidth()) + self.spinBox_basic_heatmap_width.setSizePolicy(sizePolicy) + self.spinBox_basic_heatmap_width.setMinimum(1) + self.spinBox_basic_heatmap_width.setMaximum(200) + self.spinBox_basic_heatmap_width.setProperty("value", 16) + self.spinBox_basic_heatmap_width.setObjectName("spinBox_basic_heatmap_width") + self.horizontalLayout_83.addWidget(self.spinBox_basic_heatmap_width) + self.label_33 = QtWidgets.QLabel(self.page_6) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Preferred) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.label_33.sizePolicy().hasHeightForWidth()) + self.label_33.setSizePolicy(sizePolicy) + self.label_33.setAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignVCenter) + self.label_33.setObjectName("label_33") + self.horizontalLayout_83.addWidget(self.label_33) + self.spinBox_basic_heatmap_height = QtWidgets.QSpinBox(self.page_6) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.spinBox_basic_heatmap_height.sizePolicy().hasHeightForWidth()) + self.spinBox_basic_heatmap_height.setSizePolicy(sizePolicy) + self.spinBox_basic_heatmap_height.setMinimum(1) + self.spinBox_basic_heatmap_height.setMaximum(200) + self.spinBox_basic_heatmap_height.setProperty("value", 9) + self.spinBox_basic_heatmap_height.setObjectName("spinBox_basic_heatmap_height") + self.horizontalLayout_83.addWidget(self.spinBox_basic_heatmap_height) + self.gridLayout_70.addLayout(self.horizontalLayout_83, 0, 1, 1, 1) + self.label_185 = QtWidgets.QLabel(self.page_6) + font = QtGui.QFont() + font.setBold(True) + font.setWeight(75) + self.label_185.setFont(font) + self.label_185.setObjectName("label_185") + self.gridLayout_70.addWidget(self.label_185, 4, 0, 1, 1) + self.label_186 = QtWidgets.QLabel(self.page_6) + font = QtGui.QFont() + font.setBold(True) + font.setWeight(75) + self.label_186.setFont(font) + self.label_186.setObjectName("label_186") + self.gridLayout_70.addWidget(self.label_186, 5, 0, 1, 1) + self.horizontalLayout_87 = QtWidgets.QHBoxLayout() + self.horizontalLayout_87.setObjectName("horizontalLayout_87") + self.label_31 = QtWidgets.QLabel(self.page_6) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.label_31.sizePolicy().hasHeightForWidth()) self.label_31.setSizePolicy(sizePolicy) self.label_31.setObjectName("label_31") - self.horizontalLayout_31.addWidget(self.label_31) - self.comboBox_basic_hetatmap_scale = QtWidgets.QComboBox(self.tab_13) + self.horizontalLayout_87.addWidget(self.label_31) + self.comboBox_basic_hetatmap_scale = QtWidgets.QComboBox(self.page_6) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Maximum) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) @@ -1381,151 +1593,194 @@ def setupUi(self, metaX_main): self.comboBox_basic_hetatmap_scale.addItem("") self.comboBox_basic_hetatmap_scale.addItem("") self.comboBox_basic_hetatmap_scale.addItem("") - self.horizontalLayout_31.addWidget(self.comboBox_basic_hetatmap_scale) - self.gridLayout_41.addLayout(self.horizontalLayout_31, 1, 0, 1, 3) - self.checkBox_basic_heatmap_plot_peptide = QtWidgets.QCheckBox(self.tab_13) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Fixed) + self.horizontalLayout_87.addWidget(self.comboBox_basic_hetatmap_scale) + self.label_13 = QtWidgets.QLabel(self.page_6) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.checkBox_basic_heatmap_plot_peptide.sizePolicy().hasHeightForWidth()) - self.checkBox_basic_heatmap_plot_peptide.setSizePolicy(sizePolicy) - self.checkBox_basic_heatmap_plot_peptide.setObjectName("checkBox_basic_heatmap_plot_peptide") - self.gridLayout_41.addWidget(self.checkBox_basic_heatmap_plot_peptide, 4, 0, 1, 1) - self.label_130 = QtWidgets.QLabel(self.tab_13) + sizePolicy.setHeightForWidth(self.label_13.sizePolicy().hasHeightForWidth()) + self.label_13.setSizePolicy(sizePolicy) + self.label_13.setLayoutDirection(QtCore.Qt.LeftToRight) + self.label_13.setLocale(QtCore.QLocale(QtCore.QLocale.Chinese, QtCore.QLocale.China)) + self.label_13.setAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignVCenter) + self.label_13.setObjectName("label_13") + self.horizontalLayout_87.addWidget(self.label_13) + self.comboBox_basic_hetatmap_theme = QtWidgets.QComboBox(self.page_6) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.label_130.sizePolicy().hasHeightForWidth()) - self.label_130.setSizePolicy(sizePolicy) - self.label_130.setObjectName("label_130") - self.gridLayout_41.addWidget(self.label_130, 2, 0, 1, 1) - self.checkBox_basic_heatmap_plot_mean = QtWidgets.QCheckBox(self.tab_13) - self.checkBox_basic_heatmap_plot_mean.setObjectName("checkBox_basic_heatmap_plot_mean") - self.gridLayout_41.addWidget(self.checkBox_basic_heatmap_plot_mean, 4, 1, 1, 2) - self.label_152 = QtWidgets.QLabel(self.tab_13) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Preferred) + sizePolicy.setHeightForWidth(self.comboBox_basic_hetatmap_theme.sizePolicy().hasHeightForWidth()) + self.comboBox_basic_hetatmap_theme.setSizePolicy(sizePolicy) + self.comboBox_basic_hetatmap_theme.setObjectName("comboBox_basic_hetatmap_theme") + self.horizontalLayout_87.addWidget(self.comboBox_basic_hetatmap_theme) + self.gridLayout_70.addLayout(self.horizontalLayout_87, 3, 1, 1, 1) + self.checkBox_basic_hetatmap_row_cluster = QtWidgets.QCheckBox(self.page_6) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.label_152.sizePolicy().hasHeightForWidth()) - self.label_152.setSizePolicy(sizePolicy) - self.label_152.setObjectName("label_152") - self.gridLayout_41.addWidget(self.label_152, 3, 0, 1, 1) - self.horizontalLayout_30 = QtWidgets.QHBoxLayout() - self.horizontalLayout_30.setObjectName("horizontalLayout_30") - self.checkBox_basic_hetatmap_row_cluster = QtWidgets.QCheckBox(self.tab_13) + sizePolicy.setHeightForWidth(self.checkBox_basic_hetatmap_row_cluster.sizePolicy().hasHeightForWidth()) + self.checkBox_basic_hetatmap_row_cluster.setSizePolicy(sizePolicy) self.checkBox_basic_hetatmap_row_cluster.setChecked(True) self.checkBox_basic_hetatmap_row_cluster.setObjectName("checkBox_basic_hetatmap_row_cluster") - self.horizontalLayout_30.addWidget(self.checkBox_basic_hetatmap_row_cluster) - self.checkBox_basic_hetatmap_col_cluster = QtWidgets.QCheckBox(self.tab_13) - self.checkBox_basic_hetatmap_col_cluster.setChecked(True) - self.checkBox_basic_hetatmap_col_cluster.setObjectName("checkBox_basic_hetatmap_col_cluster") - self.horizontalLayout_30.addWidget(self.checkBox_basic_hetatmap_col_cluster) - self.gridLayout_41.addLayout(self.horizontalLayout_30, 0, 0, 1, 3) - self.checkBox_basic_hetatmap_rename_taxa = QtWidgets.QCheckBox(self.tab_13) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Preferred) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.checkBox_basic_hetatmap_rename_taxa.sizePolicy().hasHeightForWidth()) - self.checkBox_basic_hetatmap_rename_taxa.setSizePolicy(sizePolicy) - self.checkBox_basic_hetatmap_rename_taxa.setChecked(True) - self.checkBox_basic_hetatmap_rename_taxa.setObjectName("checkBox_basic_hetatmap_rename_taxa") - self.gridLayout_41.addWidget(self.checkBox_basic_hetatmap_rename_taxa, 3, 2, 1, 1) - self.checkBox_basic_heatmap_sankey_title = QtWidgets.QCheckBox(self.tab_13) - self.checkBox_basic_heatmap_sankey_title.setObjectName("checkBox_basic_heatmap_sankey_title") - self.gridLayout_41.addWidget(self.checkBox_basic_heatmap_sankey_title, 5, 0, 1, 1) - self.checkBox_basic_hetatmap_show_all_labels_x = QtWidgets.QCheckBox(self.tab_13) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.checkBox_basic_hetatmap_show_all_labels_x.sizePolicy().hasHeightForWidth()) - self.checkBox_basic_hetatmap_show_all_labels_x.setSizePolicy(sizePolicy) - self.checkBox_basic_hetatmap_show_all_labels_x.setObjectName("checkBox_basic_hetatmap_show_all_labels_x") - self.gridLayout_41.addWidget(self.checkBox_basic_hetatmap_show_all_labels_x, 2, 1, 1, 1) - self.checkBox_basic_hetatmap_rename_sample_name = QtWidgets.QCheckBox(self.tab_13) - self.checkBox_basic_hetatmap_rename_sample_name.setChecked(True) - self.checkBox_basic_hetatmap_rename_sample_name.setObjectName("checkBox_basic_hetatmap_rename_sample_name") - self.gridLayout_41.addWidget(self.checkBox_basic_hetatmap_rename_sample_name, 3, 1, 1, 1) - self.checkBox_basic_hetatmap_show_all_labels_y = QtWidgets.QCheckBox(self.tab_13) - self.checkBox_basic_hetatmap_show_all_labels_y.setObjectName("checkBox_basic_hetatmap_show_all_labels_y") - self.gridLayout_41.addWidget(self.checkBox_basic_hetatmap_show_all_labels_y, 2, 2, 1, 1) - self.horizontalLayout_60 = QtWidgets.QHBoxLayout() - self.horizontalLayout_60.setObjectName("horizontalLayout_60") - self.checkBox_basic_bar_show_legend = QtWidgets.QCheckBox(self.tab_13) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) + self.gridLayout_70.addWidget(self.checkBox_basic_hetatmap_row_cluster, 3, 2, 1, 1) + self.label_183 = QtWidgets.QLabel(self.page_6) + font = QtGui.QFont() + font.setBold(True) + font.setWeight(75) + self.label_183.setFont(font) + self.label_183.setObjectName("label_183") + self.gridLayout_70.addWidget(self.label_183, 0, 0, 1, 1) + self.checkBox_basic_bar_show_legend = QtWidgets.QCheckBox(self.page_6) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.checkBox_basic_bar_show_legend.sizePolicy().hasHeightForWidth()) self.checkBox_basic_bar_show_legend.setSizePolicy(sizePolicy) self.checkBox_basic_bar_show_legend.setChecked(True) self.checkBox_basic_bar_show_legend.setObjectName("checkBox_basic_bar_show_legend") - self.horizontalLayout_60.addWidget(self.checkBox_basic_bar_show_legend) - self.checkBox_basic_bar_plot_percent = QtWidgets.QCheckBox(self.tab_13) - self.checkBox_basic_bar_plot_percent.setObjectName("checkBox_basic_bar_plot_percent") - self.horizontalLayout_60.addWidget(self.checkBox_basic_bar_plot_percent) - self.gridLayout_41.addLayout(self.horizontalLayout_60, 5, 1, 1, 2) - self.gridLayout_23.addLayout(self.gridLayout_41, 3, 9, 3, 1) - self.radioButton_basic_heatmap_group = QtWidgets.QRadioButton(self.tab_13) - self.radioButton_basic_heatmap_group.setChecked(True) - self.radioButton_basic_heatmap_group.setObjectName("radioButton_basic_heatmap_group") - self.gridLayout_23.addWidget(self.radioButton_basic_heatmap_group, 1, 0, 1, 1) - self.label_32 = QtWidgets.QLabel(self.tab_13) - self.label_32.setObjectName("label_32") - self.gridLayout_23.addWidget(self.label_32, 3, 0, 1, 1) - self.listWidget_list_for_ploting = QtWidgets.QListWidget(self.tab_13) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Preferred) + self.gridLayout_70.addWidget(self.checkBox_basic_bar_show_legend, 4, 1, 1, 1) + self.checkBox_basic_heatmap_sankey_title = QtWidgets.QCheckBox(self.page_6) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.listWidget_list_for_ploting.sizePolicy().hasHeightForWidth()) - self.listWidget_list_for_ploting.setSizePolicy(sizePolicy) - self.listWidget_list_for_ploting.setObjectName("listWidget_list_for_ploting") - self.gridLayout_23.addWidget(self.listWidget_list_for_ploting, 5, 1, 2, 5) - self.pushButton_basic_heatmap_add_top = QtWidgets.QPushButton(self.tab_13) - self.pushButton_basic_heatmap_add_top.setEnabled(False) + sizePolicy.setHeightForWidth(self.checkBox_basic_heatmap_sankey_title.sizePolicy().hasHeightForWidth()) + self.checkBox_basic_heatmap_sankey_title.setSizePolicy(sizePolicy) + self.checkBox_basic_heatmap_sankey_title.setObjectName("checkBox_basic_heatmap_sankey_title") + self.gridLayout_70.addWidget(self.checkBox_basic_heatmap_sankey_title, 5, 1, 1, 1) + self.label_184 = QtWidgets.QLabel(self.page_6) + font = QtGui.QFont() + font.setBold(True) + font.setWeight(75) + self.label_184.setFont(font) + self.label_184.setObjectName("label_184") + self.gridLayout_70.addWidget(self.label_184, 3, 0, 1, 1) + self.checkBox_basic_hetatmap_col_cluster = QtWidgets.QCheckBox(self.page_6) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_basic_heatmap_add_top.sizePolicy().hasHeightForWidth()) - self.pushButton_basic_heatmap_add_top.setSizePolicy(sizePolicy) - self.pushButton_basic_heatmap_add_top.setObjectName("pushButton_basic_heatmap_add_top") - self.gridLayout_23.addWidget(self.pushButton_basic_heatmap_add_top, 4, 5, 1, 1) - self.verticalLayout_basic_heatmap_group = QtWidgets.QVBoxLayout() - self.verticalLayout_basic_heatmap_group.setObjectName("verticalLayout_basic_heatmap_group") - self.gridLayout_23.addLayout(self.verticalLayout_basic_heatmap_group, 1, 3, 1, 3) - self.horizontalLayout_28 = QtWidgets.QHBoxLayout() - self.horizontalLayout_28.setObjectName("horizontalLayout_28") - self.label_80 = QtWidgets.QLabel(self.tab_13) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Preferred) + sizePolicy.setHeightForWidth(self.checkBox_basic_hetatmap_col_cluster.sizePolicy().hasHeightForWidth()) + self.checkBox_basic_hetatmap_col_cluster.setSizePolicy(sizePolicy) + self.checkBox_basic_hetatmap_col_cluster.setChecked(True) + self.checkBox_basic_hetatmap_col_cluster.setObjectName("checkBox_basic_hetatmap_col_cluster") + self.gridLayout_70.addWidget(self.checkBox_basic_hetatmap_col_cluster, 3, 3, 1, 1) + self.checkBox_basic_bar_plot_percent = QtWidgets.QCheckBox(self.page_6) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.label_80.sizePolicy().hasHeightForWidth()) - self.label_80.setSizePolicy(sizePolicy) - self.label_80.setObjectName("label_80") - self.horizontalLayout_28.addWidget(self.label_80) - self.comboBox_basic_table = QtWidgets.QComboBox(self.tab_13) - self.comboBox_basic_table.setEnabled(False) + sizePolicy.setHeightForWidth(self.checkBox_basic_bar_plot_percent.sizePolicy().hasHeightForWidth()) + self.checkBox_basic_bar_plot_percent.setSizePolicy(sizePolicy) + self.checkBox_basic_bar_plot_percent.setObjectName("checkBox_basic_bar_plot_percent") + self.gridLayout_70.addWidget(self.checkBox_basic_bar_plot_percent, 4, 2, 1, 1) + self.line_13 = QtWidgets.QFrame(self.page_6) + self.line_13.setFrameShape(QtWidgets.QFrame.HLine) + self.line_13.setFrameShadow(QtWidgets.QFrame.Sunken) + self.line_13.setObjectName("line_13") + self.gridLayout_70.addWidget(self.line_13, 2, 1, 1, 3) + self.horizontalLayout_90 = QtWidgets.QHBoxLayout() + self.horizontalLayout_90.setObjectName("horizontalLayout_90") + self.checkBox_basic_heatmap_plot_mean = QtWidgets.QCheckBox(self.page_6) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.comboBox_basic_table.sizePolicy().hasHeightForWidth()) - self.comboBox_basic_table.setSizePolicy(sizePolicy) - self.comboBox_basic_table.setObjectName("comboBox_basic_table") - self.comboBox_basic_table.addItem("") - self.comboBox_basic_table.addItem("") - self.comboBox_basic_table.addItem("") - self.comboBox_basic_table.addItem("") - self.horizontalLayout_28.addWidget(self.comboBox_basic_table) - self.label_144 = QtWidgets.QLabel(self.tab_13) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Preferred) + sizePolicy.setHeightForWidth(self.checkBox_basic_heatmap_plot_mean.sizePolicy().hasHeightForWidth()) + self.checkBox_basic_heatmap_plot_mean.setSizePolicy(sizePolicy) + self.checkBox_basic_heatmap_plot_mean.setObjectName("checkBox_basic_heatmap_plot_mean") + self.horizontalLayout_90.addWidget(self.checkBox_basic_heatmap_plot_mean) + self.checkBox_basic_heatmap_plot_peptide = QtWidgets.QCheckBox(self.page_6) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.label_144.sizePolicy().hasHeightForWidth()) - self.label_144.setSizePolicy(sizePolicy) - self.label_144.setObjectName("label_144") - self.horizontalLayout_28.addWidget(self.label_144) - self.comboBox_basic_heatmap_meta = QtWidgets.QComboBox(self.tab_13) - self.comboBox_basic_heatmap_meta.setObjectName("comboBox_basic_heatmap_meta") - self.horizontalLayout_28.addWidget(self.comboBox_basic_heatmap_meta) - self.gridLayout_23.addLayout(self.horizontalLayout_28, 0, 0, 1, 3) + sizePolicy.setHeightForWidth(self.checkBox_basic_heatmap_plot_peptide.sizePolicy().hasHeightForWidth()) + self.checkBox_basic_heatmap_plot_peptide.setSizePolicy(sizePolicy) + self.checkBox_basic_heatmap_plot_peptide.setObjectName("checkBox_basic_heatmap_plot_peptide") + self.horizontalLayout_90.addWidget(self.checkBox_basic_heatmap_plot_peptide) + self.gridLayout_70.addLayout(self.horizontalLayout_90, 1, 1, 1, 1) + self.horizontalLayout_88 = QtWidgets.QHBoxLayout() + self.horizontalLayout_88.setObjectName("horizontalLayout_88") + self.label_130 = QtWidgets.QLabel(self.page_6) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.label_130.sizePolicy().hasHeightForWidth()) + self.label_130.setSizePolicy(sizePolicy) + self.label_130.setMinimumSize(QtCore.QSize(100, 0)) + self.label_130.setMaximumSize(QtCore.QSize(100, 16777215)) + self.label_130.setObjectName("label_130") + self.horizontalLayout_88.addWidget(self.label_130) + self.checkBox_basic_hetatmap_show_all_labels_x = QtWidgets.QCheckBox(self.page_6) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.checkBox_basic_hetatmap_show_all_labels_x.sizePolicy().hasHeightForWidth()) + self.checkBox_basic_hetatmap_show_all_labels_x.setSizePolicy(sizePolicy) + self.checkBox_basic_hetatmap_show_all_labels_x.setObjectName("checkBox_basic_hetatmap_show_all_labels_x") + self.horizontalLayout_88.addWidget(self.checkBox_basic_hetatmap_show_all_labels_x) + self.checkBox_basic_hetatmap_show_all_labels_y = QtWidgets.QCheckBox(self.page_6) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.checkBox_basic_hetatmap_show_all_labels_y.sizePolicy().hasHeightForWidth()) + self.checkBox_basic_hetatmap_show_all_labels_y.setSizePolicy(sizePolicy) + self.checkBox_basic_hetatmap_show_all_labels_y.setObjectName("checkBox_basic_hetatmap_show_all_labels_y") + self.horizontalLayout_88.addWidget(self.checkBox_basic_hetatmap_show_all_labels_y) + self.gridLayout_70.addLayout(self.horizontalLayout_88, 1, 2, 1, 1) + self.horizontalLayout_89 = QtWidgets.QHBoxLayout() + self.horizontalLayout_89.setObjectName("horizontalLayout_89") + self.label_152 = QtWidgets.QLabel(self.page_6) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Preferred) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.label_152.sizePolicy().hasHeightForWidth()) + self.label_152.setSizePolicy(sizePolicy) + self.label_152.setObjectName("label_152") + self.horizontalLayout_89.addWidget(self.label_152) + self.checkBox_basic_hetatmap_rename_sample_name = QtWidgets.QCheckBox(self.page_6) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.checkBox_basic_hetatmap_rename_sample_name.sizePolicy().hasHeightForWidth()) + self.checkBox_basic_hetatmap_rename_sample_name.setSizePolicy(sizePolicy) + self.checkBox_basic_hetatmap_rename_sample_name.setChecked(True) + self.checkBox_basic_hetatmap_rename_sample_name.setObjectName("checkBox_basic_hetatmap_rename_sample_name") + self.horizontalLayout_89.addWidget(self.checkBox_basic_hetatmap_rename_sample_name) + self.checkBox_basic_hetatmap_rename_taxa = QtWidgets.QCheckBox(self.page_6) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Preferred) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.checkBox_basic_hetatmap_rename_taxa.sizePolicy().hasHeightForWidth()) + self.checkBox_basic_hetatmap_rename_taxa.setSizePolicy(sizePolicy) + self.checkBox_basic_hetatmap_rename_taxa.setChecked(True) + self.checkBox_basic_hetatmap_rename_taxa.setObjectName("checkBox_basic_hetatmap_rename_taxa") + self.horizontalLayout_89.addWidget(self.checkBox_basic_hetatmap_rename_taxa) + self.gridLayout_70.addLayout(self.horizontalLayout_89, 0, 3, 1, 1) + self.horizontalLayout_91 = QtWidgets.QHBoxLayout() + self.horizontalLayout_91.setObjectName("horizontalLayout_91") + self.label_108 = QtWidgets.QLabel(self.page_6) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Preferred) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.label_108.sizePolicy().hasHeightForWidth()) + self.label_108.setSizePolicy(sizePolicy) + self.label_108.setMinimumSize(QtCore.QSize(100, 0)) + self.label_108.setMaximumSize(QtCore.QSize(100, 16777215)) + self.label_108.setAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignVCenter) + self.label_108.setObjectName("label_108") + self.horizontalLayout_91.addWidget(self.label_108) + self.spinBox_basic_heatmap_label_font_size = QtWidgets.QSpinBox(self.page_6) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.spinBox_basic_heatmap_label_font_size.sizePolicy().hasHeightForWidth()) + self.spinBox_basic_heatmap_label_font_size.setSizePolicy(sizePolicy) + self.spinBox_basic_heatmap_label_font_size.setMinimum(1) + self.spinBox_basic_heatmap_label_font_size.setMaximum(999) + self.spinBox_basic_heatmap_label_font_size.setProperty("value", 10) + self.spinBox_basic_heatmap_label_font_size.setObjectName("spinBox_basic_heatmap_label_font_size") + self.horizontalLayout_91.addWidget(self.spinBox_basic_heatmap_label_font_size) + self.gridLayout_70.addLayout(self.horizontalLayout_91, 0, 2, 1, 1) + self.gridLayout_41.addLayout(self.gridLayout_70, 0, 1, 1, 1) + self.toolBox.addItem(self.page_6, "") + self.gridLayout_23.addWidget(self.toolBox, 9, 0, 1, 6) self.tabWidget_4.addTab(self.tab_13, "") self.tab_10 = QtWidgets.QWidget() self.tab_10.setObjectName("tab_10") @@ -1564,6 +1819,7 @@ def setupUi(self, metaX_main): self.gridLayout_9 = QtWidgets.QGridLayout(self.tab_2) self.gridLayout_9.setObjectName("gridLayout_9") self.tabWidget_3 = QtWidgets.QTabWidget(self.tab_2) + self.tabWidget_3.setTabShape(QtWidgets.QTabWidget.Triangular) self.tabWidget_3.setObjectName("tabWidget_3") self.tab_3 = QtWidgets.QWidget() self.tab_3.setObjectName("tab_3") @@ -1577,23 +1833,7 @@ def setupUi(self, metaX_main): sizePolicy.setHeightForWidth(self.pushButton_ttest.sizePolicy().hasHeightForWidth()) self.pushButton_ttest.setSizePolicy(sizePolicy) self.pushButton_ttest.setObjectName("pushButton_ttest") - self.gridLayout_13.addWidget(self.pushButton_ttest, 6, 0, 1, 2) - self.comboBox_ttest_group1 = QtWidgets.QComboBox(self.tab_3) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.comboBox_ttest_group1.sizePolicy().hasHeightForWidth()) - self.comboBox_ttest_group1.setSizePolicy(sizePolicy) - self.comboBox_ttest_group1.setObjectName("comboBox_ttest_group1") - self.gridLayout_13.addWidget(self.comboBox_ttest_group1, 5, 0, 1, 1) - self.label_52 = QtWidgets.QLabel(self.tab_3) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.label_52.sizePolicy().hasHeightForWidth()) - self.label_52.setSizePolicy(sizePolicy) - self.label_52.setObjectName("label_52") - self.gridLayout_13.addWidget(self.label_52, 4, 1, 1, 1) + self.gridLayout_13.addWidget(self.pushButton_ttest, 7, 0, 1, 2) self.label_42 = QtWidgets.QLabel(self.tab_3) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) @@ -1602,14 +1842,6 @@ def setupUi(self, metaX_main): self.label_42.setSizePolicy(sizePolicy) self.label_42.setObjectName("label_42") self.gridLayout_13.addWidget(self.label_42, 4, 0, 1, 1) - self.comboBox_ttest_group2 = QtWidgets.QComboBox(self.tab_3) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.comboBox_ttest_group2.sizePolicy().hasHeightForWidth()) - self.comboBox_ttest_group2.setSizePolicy(sizePolicy) - self.comboBox_ttest_group2.setObjectName("comboBox_ttest_group2") - self.gridLayout_13.addWidget(self.comboBox_ttest_group2, 5, 1, 1, 1) self.horizontalLayout_38 = QtWidgets.QHBoxLayout() self.horizontalLayout_38.setObjectName("horizontalLayout_38") self.label_36 = QtWidgets.QLabel(self.tab_3) @@ -1661,17 +1893,45 @@ def setupUi(self, metaX_main): self.horizontalLayout_70.addWidget(self.comboBox_ttest_condition_group) self.horizontalLayout_38.addLayout(self.horizontalLayout_70) self.gridLayout_13.addLayout(self.horizontalLayout_38, 2, 0, 1, 2) + self.line_21 = QtWidgets.QFrame(self.tab_3) + self.line_21.setFrameShape(QtWidgets.QFrame.HLine) + self.line_21.setFrameShadow(QtWidgets.QFrame.Sunken) + self.line_21.setObjectName("line_21") + self.gridLayout_13.addWidget(self.line_21, 3, 0, 1, 2) + self.comboBox_ttest_group1 = QtWidgets.QComboBox(self.tab_3) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.comboBox_ttest_group1.sizePolicy().hasHeightForWidth()) + self.comboBox_ttest_group1.setSizePolicy(sizePolicy) + self.comboBox_ttest_group1.setObjectName("comboBox_ttest_group1") + self.gridLayout_13.addWidget(self.comboBox_ttest_group1, 5, 0, 1, 1) + self.label_52 = QtWidgets.QLabel(self.tab_3) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.label_52.sizePolicy().hasHeightForWidth()) + self.label_52.setSizePolicy(sizePolicy) + self.label_52.setObjectName("label_52") + self.gridLayout_13.addWidget(self.label_52, 4, 1, 1, 1) + self.comboBox_ttest_group2 = QtWidgets.QComboBox(self.tab_3) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.comboBox_ttest_group2.sizePolicy().hasHeightForWidth()) + self.comboBox_ttest_group2.setSizePolicy(sizePolicy) + self.comboBox_ttest_group2.setObjectName("comboBox_ttest_group2") + self.gridLayout_13.addWidget(self.comboBox_ttest_group2, 5, 1, 1, 1) + self.line_22 = QtWidgets.QFrame(self.tab_3) + self.line_22.setFrameShape(QtWidgets.QFrame.HLine) + self.line_22.setFrameShadow(QtWidgets.QFrame.Sunken) + self.line_22.setObjectName("line_22") + self.gridLayout_13.addWidget(self.line_22, 6, 0, 1, 2) self.tabWidget_3.addTab(self.tab_3, "") self.tab_7 = QtWidgets.QWidget() self.tab_7.setObjectName("tab_7") self.gridLayout_11 = QtWidgets.QGridLayout(self.tab_7) self.gridLayout_11.setObjectName("gridLayout_11") - self.comboBox_anova_meta = QtWidgets.QComboBox(self.tab_7) - self.comboBox_anova_meta.setObjectName("comboBox_anova_meta") - self.gridLayout_11.addWidget(self.comboBox_anova_meta, 2, 1, 1, 1) - self.label_104 = QtWidgets.QLabel(self.tab_7) - self.label_104.setObjectName("label_104") - self.gridLayout_11.addWidget(self.label_104, 2, 0, 1, 1) self.label_53 = QtWidgets.QLabel(self.tab_7) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) @@ -1679,19 +1939,7 @@ def setupUi(self, metaX_main): sizePolicy.setHeightForWidth(self.label_53.sizePolicy().hasHeightForWidth()) self.label_53.setSizePolicy(sizePolicy) self.label_53.setObjectName("label_53") - self.gridLayout_11.addWidget(self.label_53, 3, 0, 1, 1) - self.horizontalLayout_anova_group = QtWidgets.QHBoxLayout() - self.horizontalLayout_anova_group.setObjectName("horizontalLayout_anova_group") - self.gridLayout_11.addLayout(self.horizontalLayout_anova_group, 3, 1, 1, 1) - self.pushButton_anova_test = QtWidgets.QPushButton(self.tab_7) - self.pushButton_anova_test.setEnabled(False) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_anova_test.sizePolicy().hasHeightForWidth()) - self.pushButton_anova_test.setSizePolicy(sizePolicy) - self.pushButton_anova_test.setObjectName("pushButton_anova_test") - self.gridLayout_11.addWidget(self.pushButton_anova_test, 4, 0, 1, 2) + self.gridLayout_11.addWidget(self.label_53, 4, 0, 1, 1) self.horizontalLayout_37 = QtWidgets.QHBoxLayout() self.horizontalLayout_37.setObjectName("horizontalLayout_37") self.label_37 = QtWidgets.QLabel(self.tab_7) @@ -1726,133 +1974,42 @@ def setupUi(self, metaX_main): self.horizontalLayout_71.addWidget(self.comboBox_anova_condition_group) self.horizontalLayout_37.addLayout(self.horizontalLayout_71) self.gridLayout_11.addLayout(self.horizontalLayout_37, 1, 0, 1, 2) - self.tabWidget_3.addTab(self.tab_7, "") - self.tab_4 = QtWidgets.QWidget() - self.tab_4.setObjectName("tab_4") - self.gridLayout_10 = QtWidgets.QGridLayout(self.tab_4) - self.gridLayout_10.setObjectName("gridLayout_10") - self.label_tukey_func_num = QtWidgets.QLabel(self.tab_4) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Preferred) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.label_tukey_func_num.sizePolicy().hasHeightForWidth()) - self.label_tukey_func_num.setSizePolicy(sizePolicy) - self.label_tukey_func_num.setObjectName("label_tukey_func_num") - self.gridLayout_10.addWidget(self.label_tukey_func_num, 0, 2, 1, 1) - self.pushButton_show_linked_taxa = QtWidgets.QPushButton(self.tab_4) - self.pushButton_show_linked_taxa.setEnabled(False) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_show_linked_taxa.sizePolicy().hasHeightForWidth()) - self.pushButton_show_linked_taxa.setSizePolicy(sizePolicy) - self.pushButton_show_linked_taxa.setObjectName("pushButton_show_linked_taxa") - self.gridLayout_10.addWidget(self.pushButton_show_linked_taxa, 0, 3, 1, 1) - self.label_55 = QtWidgets.QLabel(self.tab_4) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Preferred) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.label_55.sizePolicy().hasHeightForWidth()) - self.label_55.setSizePolicy(sizePolicy) - self.label_55.setObjectName("label_55") - self.gridLayout_10.addWidget(self.label_55, 1, 0, 1, 1) - self.pushButton_show_linked_func = QtWidgets.QPushButton(self.tab_4) - self.pushButton_show_linked_func.setEnabled(False) - self.pushButton_show_linked_func.setObjectName("pushButton_show_linked_func") - self.gridLayout_10.addWidget(self.pushButton_show_linked_func, 1, 3, 1, 1) - self.pushButton_plot_tukey = QtWidgets.QPushButton(self.tab_4) - self.pushButton_plot_tukey.setEnabled(False) - self.pushButton_plot_tukey.setObjectName("pushButton_plot_tukey") - self.gridLayout_10.addWidget(self.pushButton_plot_tukey, 6, 3, 1, 1) - self.label_54 = QtWidgets.QLabel(self.tab_4) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.label_54.sizePolicy().hasHeightForWidth()) - self.label_54.setSizePolicy(sizePolicy) - self.label_54.setObjectName("label_54") - self.gridLayout_10.addWidget(self.label_54, 0, 0, 1, 1) - self.line_2 = QtWidgets.QFrame(self.tab_4) - self.line_2.setFrameShape(QtWidgets.QFrame.HLine) - self.line_2.setFrameShadow(QtWidgets.QFrame.Sunken) - self.line_2.setObjectName("line_2") - self.gridLayout_10.addWidget(self.line_2, 3, 0, 1, 4) - self.label_tukey_taxa_num = QtWidgets.QLabel(self.tab_4) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Preferred) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.label_tukey_taxa_num.sizePolicy().hasHeightForWidth()) - self.label_tukey_taxa_num.setSizePolicy(sizePolicy) - self.label_tukey_taxa_num.setObjectName("label_tukey_taxa_num") - self.gridLayout_10.addWidget(self.label_tukey_taxa_num, 1, 2, 1, 1) - self.pushButton_tukey_fresh = QtWidgets.QPushButton(self.tab_4) - self.pushButton_tukey_fresh.setEnabled(False) - self.pushButton_tukey_fresh.setObjectName("pushButton_tukey_fresh") - self.gridLayout_10.addWidget(self.pushButton_tukey_fresh, 2, 1, 1, 1) - self.comboBox_tukey_taxa = QtWidgets.QComboBox(self.tab_4) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.comboBox_tukey_taxa.sizePolicy().hasHeightForWidth()) - self.comboBox_tukey_taxa.setSizePolicy(sizePolicy) - self.comboBox_tukey_taxa.setEditable(True) - self.comboBox_tukey_taxa.setObjectName("comboBox_tukey_taxa") - self.gridLayout_10.addWidget(self.comboBox_tukey_taxa, 1, 1, 1, 1) - self.comboBox_tukey_func = QtWidgets.QComboBox(self.tab_4) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.comboBox_tukey_func.sizePolicy().hasHeightForWidth()) - self.comboBox_tukey_func.setSizePolicy(sizePolicy) - self.comboBox_tukey_func.setEditable(True) - self.comboBox_tukey_func.setObjectName("comboBox_tukey_func") - self.gridLayout_10.addWidget(self.comboBox_tukey_func, 0, 1, 1, 1) - self.pushButton_tukey_test = QtWidgets.QPushButton(self.tab_4) - self.pushButton_tukey_test.setEnabled(False) - self.pushButton_tukey_test.setObjectName("pushButton_tukey_test") - self.gridLayout_10.addWidget(self.pushButton_tukey_test, 6, 1, 1, 1) - self.horizontalLayout_59 = QtWidgets.QHBoxLayout() - self.horizontalLayout_59.setObjectName("horizontalLayout_59") - self.label_106 = QtWidgets.QLabel(self.tab_4) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) + self.horizontalLayout_anova_group = QtWidgets.QHBoxLayout() + self.horizontalLayout_anova_group.setObjectName("horizontalLayout_anova_group") + self.gridLayout_11.addLayout(self.horizontalLayout_anova_group, 4, 1, 1, 1) + self.comboBox_anova_meta = QtWidgets.QComboBox(self.tab_7) + self.comboBox_anova_meta.setObjectName("comboBox_anova_meta") + self.gridLayout_11.addWidget(self.comboBox_anova_meta, 3, 1, 1, 1) + self.line_23 = QtWidgets.QFrame(self.tab_7) + self.line_23.setFrameShape(QtWidgets.QFrame.HLine) + self.line_23.setFrameShadow(QtWidgets.QFrame.Sunken) + self.line_23.setObjectName("line_23") + self.gridLayout_11.addWidget(self.line_23, 2, 0, 1, 2) + self.label_104 = QtWidgets.QLabel(self.tab_7) + self.label_104.setObjectName("label_104") + self.gridLayout_11.addWidget(self.label_104, 3, 0, 1, 1) + self.pushButton_anova_test = QtWidgets.QPushButton(self.tab_7) + self.pushButton_anova_test.setEnabled(False) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.label_106.sizePolicy().hasHeightForWidth()) - self.label_106.setSizePolicy(sizePolicy) - self.label_106.setObjectName("label_106") - self.horizontalLayout_59.addWidget(self.label_106) - self.comboBox_tukey_meta = QtWidgets.QComboBox(self.tab_4) - self.comboBox_tukey_meta.setObjectName("comboBox_tukey_meta") - self.horizontalLayout_59.addWidget(self.comboBox_tukey_meta) - self.checkBox_tukey_in_condition = QtWidgets.QCheckBox(self.tab_4) - self.checkBox_tukey_in_condition.setLayoutDirection(QtCore.Qt.RightToLeft) - self.checkBox_tukey_in_condition.setObjectName("checkBox_tukey_in_condition") - self.horizontalLayout_59.addWidget(self.checkBox_tukey_in_condition) - self.comboBox_tukey_condition_meta = QtWidgets.QComboBox(self.tab_4) - self.comboBox_tukey_condition_meta.setEnabled(False) - self.comboBox_tukey_condition_meta.setObjectName("comboBox_tukey_condition_meta") - self.horizontalLayout_59.addWidget(self.comboBox_tukey_condition_meta) - self.horizontalLayout_72 = QtWidgets.QHBoxLayout() - self.horizontalLayout_72.setObjectName("horizontalLayout_72") - self.comboBox_tukey_condition_group = QtWidgets.QComboBox(self.tab_4) - self.comboBox_tukey_condition_group.setEnabled(False) - self.comboBox_tukey_condition_group.setObjectName("comboBox_tukey_condition_group") - self.horizontalLayout_72.addWidget(self.comboBox_tukey_condition_group) - self.horizontalLayout_59.addLayout(self.horizontalLayout_72) - self.gridLayout_10.addLayout(self.horizontalLayout_59, 5, 1, 1, 1) - self.label_111 = QtWidgets.QLabel(self.tab_4) - self.label_111.setObjectName("label_111") - self.gridLayout_10.addWidget(self.label_111, 5, 2, 1, 1) - self.comboBox_tukey_by_sum_each = QtWidgets.QComboBox(self.tab_4) - self.comboBox_tukey_by_sum_each.setObjectName("comboBox_tukey_by_sum_each") - self.comboBox_tukey_by_sum_each.addItem("") - self.comboBox_tukey_by_sum_each.addItem("") - self.gridLayout_10.addWidget(self.comboBox_tukey_by_sum_each, 5, 3, 1, 1) - self.tabWidget_3.addTab(self.tab_4, "") + sizePolicy.setHeightForWidth(self.pushButton_anova_test.sizePolicy().hasHeightForWidth()) + self.pushButton_anova_test.setSizePolicy(sizePolicy) + self.pushButton_anova_test.setObjectName("pushButton_anova_test") + self.gridLayout_11.addWidget(self.pushButton_anova_test, 6, 0, 1, 2) + self.line_24 = QtWidgets.QFrame(self.tab_7) + self.line_24.setFrameShape(QtWidgets.QFrame.HLine) + self.line_24.setFrameShadow(QtWidgets.QFrame.Sunken) + self.line_24.setObjectName("line_24") + self.gridLayout_11.addWidget(self.line_24, 5, 0, 1, 2) + self.tabWidget_3.addTab(self.tab_7, "") self.tab_16 = QtWidgets.QWidget() self.tab_16.setObjectName("tab_16") self.gridLayout_33 = QtWidgets.QGridLayout(self.tab_16) self.gridLayout_33.setObjectName("gridLayout_33") + self.label_115 = QtWidgets.QLabel(self.tab_16) + self.label_115.setObjectName("label_115") + self.gridLayout_33.addWidget(self.label_115, 4, 1, 1, 1) self.horizontalLayout_24 = QtWidgets.QHBoxLayout() self.horizontalLayout_24.setObjectName("horizontalLayout_24") self.checkBox_comparing_group_control_in_condition = QtWidgets.QCheckBox(self.tab_16) @@ -1875,7 +2032,19 @@ def setupUi(self, metaX_main): self.comboBox_group_control_comparing_each_condition_meta.setEnabled(False) self.comboBox_group_control_comparing_each_condition_meta.setObjectName("comboBox_group_control_comparing_each_condition_meta") self.horizontalLayout_24.addWidget(self.comboBox_group_control_comparing_each_condition_meta) - self.gridLayout_33.addLayout(self.horizontalLayout_24, 6, 1, 1, 1) + self.gridLayout_33.addLayout(self.horizontalLayout_24, 7, 1, 1, 1) + self.label_114 = QtWidgets.QLabel(self.tab_16) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.label_114.sizePolicy().hasHeightForWidth()) + self.label_114.setSizePolicy(sizePolicy) + self.label_114.setObjectName("label_114") + self.gridLayout_33.addWidget(self.label_114, 4, 2, 1, 1) + self.pushButton_dunnett_test = QtWidgets.QPushButton(self.tab_16) + self.pushButton_dunnett_test.setEnabled(False) + self.pushButton_dunnett_test.setObjectName("pushButton_dunnett_test") + self.gridLayout_33.addWidget(self.pushButton_dunnett_test, 9, 1, 1, 2) self.horizontalLayout_39 = QtWidgets.QHBoxLayout() self.horizontalLayout_39.setObjectName("horizontalLayout_39") self.label_112 = QtWidgets.QLabel(self.tab_16) @@ -1922,123 +2091,485 @@ def setupUi(self, metaX_main): self.gridLayout_33.addLayout(self.horizontalLayout_39, 1, 1, 1, 2) self.horizontalLayout_dunnett_group = QtWidgets.QHBoxLayout() self.horizontalLayout_dunnett_group.setObjectName("horizontalLayout_dunnett_group") - self.gridLayout_33.addLayout(self.horizontalLayout_dunnett_group, 4, 2, 1, 1) - self.label_114 = QtWidgets.QLabel(self.tab_16) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.label_114.sizePolicy().hasHeightForWidth()) - self.label_114.setSizePolicy(sizePolicy) - self.label_114.setObjectName("label_114") - self.gridLayout_33.addWidget(self.label_114, 3, 2, 1, 1) + self.gridLayout_33.addLayout(self.horizontalLayout_dunnett_group, 5, 2, 1, 1) + self.pushButton_multi_deseq2 = QtWidgets.QPushButton(self.tab_16) + self.pushButton_multi_deseq2.setEnabled(False) + self.pushButton_multi_deseq2.setObjectName("pushButton_multi_deseq2") + self.gridLayout_33.addWidget(self.pushButton_multi_deseq2, 10, 1, 1, 2) + self.line_25 = QtWidgets.QFrame(self.tab_16) + self.line_25.setFrameShape(QtWidgets.QFrame.HLine) + self.line_25.setFrameShadow(QtWidgets.QFrame.Sunken) + self.line_25.setObjectName("line_25") + self.gridLayout_33.addWidget(self.line_25, 3, 1, 1, 2) + self.line_26 = QtWidgets.QFrame(self.tab_16) + self.line_26.setFrameShape(QtWidgets.QFrame.HLine) + self.line_26.setFrameShadow(QtWidgets.QFrame.Sunken) + self.line_26.setObjectName("line_26") + self.gridLayout_33.addWidget(self.line_26, 8, 1, 1, 2) self.comboBox_dunnett_control_group = QtWidgets.QComboBox(self.tab_16) self.comboBox_dunnett_control_group.setObjectName("comboBox_dunnett_control_group") - self.gridLayout_33.addWidget(self.comboBox_dunnett_control_group, 4, 1, 1, 1) - self.pushButton_dunnett_test = QtWidgets.QPushButton(self.tab_16) - self.pushButton_dunnett_test.setEnabled(False) - self.pushButton_dunnett_test.setObjectName("pushButton_dunnett_test") - self.gridLayout_33.addWidget(self.pushButton_dunnett_test, 7, 1, 1, 2) - self.label_115 = QtWidgets.QLabel(self.tab_16) - self.label_115.setObjectName("label_115") - self.gridLayout_33.addWidget(self.label_115, 3, 1, 1, 1) - self.pushButton_multi_deseq2 = QtWidgets.QPushButton(self.tab_16) - self.pushButton_multi_deseq2.setEnabled(False) - self.pushButton_multi_deseq2.setObjectName("pushButton_multi_deseq2") - self.gridLayout_33.addWidget(self.pushButton_multi_deseq2, 8, 1, 1, 2) + self.gridLayout_33.addWidget(self.comboBox_dunnett_control_group, 5, 1, 1, 1) self.tabWidget_3.addTab(self.tab_16, "") - self.gridLayout_9.addWidget(self.tabWidget_3, 0, 0, 1, 1) - self.gridLayout_top_heatmap_plot = QtWidgets.QGridLayout() - self.gridLayout_top_heatmap_plot.setObjectName("gridLayout_top_heatmap_plot") - self.horizontalLayout_23 = QtWidgets.QHBoxLayout() - self.horizontalLayout_23.setObjectName("horizontalLayout_23") - self.checkBox_cross_heatmap_col_cluster = QtWidgets.QCheckBox(self.tab_2) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Fixed) + self.tab_19 = QtWidgets.QWidget() + self.tab_19.setObjectName("tab_19") + self.gridLayout_16 = QtWidgets.QGridLayout(self.tab_19) + self.gridLayout_16.setObjectName("gridLayout_16") + self.label_166 = QtWidgets.QLabel(self.tab_19) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Maximum) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.checkBox_cross_heatmap_col_cluster.sizePolicy().hasHeightForWidth()) - self.checkBox_cross_heatmap_col_cluster.setSizePolicy(sizePolicy) - self.checkBox_cross_heatmap_col_cluster.setChecked(True) - self.checkBox_cross_heatmap_col_cluster.setObjectName("checkBox_cross_heatmap_col_cluster") - self.horizontalLayout_23.addWidget(self.checkBox_cross_heatmap_col_cluster) - self.checkBox_cross_heatmap_row_cluster = QtWidgets.QCheckBox(self.tab_2) - self.checkBox_cross_heatmap_row_cluster.setChecked(True) - self.checkBox_cross_heatmap_row_cluster.setObjectName("checkBox_cross_heatmap_row_cluster") - self.horizontalLayout_23.addWidget(self.checkBox_cross_heatmap_row_cluster) - self.gridLayout_top_heatmap_plot.addLayout(self.horizontalLayout_23, 3, 2, 1, 1) - self.pushButton_plot_top_heatmap = QtWidgets.QPushButton(self.tab_2) - self.pushButton_plot_top_heatmap.setEnabled(False) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.MinimumExpanding, QtWidgets.QSizePolicy.Preferred) + sizePolicy.setHeightForWidth(self.label_166.sizePolicy().hasHeightForWidth()) + self.label_166.setSizePolicy(sizePolicy) + self.label_166.setObjectName("label_166") + self.gridLayout_16.addWidget(self.label_166, 3, 0, 1, 1) + self.line_14 = QtWidgets.QFrame(self.tab_19) + self.line_14.setFrameShape(QtWidgets.QFrame.HLine) + self.line_14.setFrameShadow(QtWidgets.QFrame.Sunken) + self.line_14.setObjectName("line_14") + self.gridLayout_16.addWidget(self.line_14, 4, 0, 1, 3) + self.horizontalLayout_22 = QtWidgets.QHBoxLayout() + self.horizontalLayout_22.setObjectName("horizontalLayout_22") + self.label_2 = QtWidgets.QLabel(self.tab_19) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_plot_top_heatmap.sizePolicy().hasHeightForWidth()) - self.pushButton_plot_top_heatmap.setSizePolicy(sizePolicy) - self.pushButton_plot_top_heatmap.setAutoDefault(False) - self.pushButton_plot_top_heatmap.setObjectName("pushButton_plot_top_heatmap") - self.gridLayout_top_heatmap_plot.addWidget(self.pushButton_plot_top_heatmap, 1, 6, 2, 1) - self.horizontalLayout_15 = QtWidgets.QHBoxLayout() - self.horizontalLayout_15.setObjectName("horizontalLayout_15") - self.label_131 = QtWidgets.QLabel(self.tab_2) + sizePolicy.setHeightForWidth(self.label_2.sizePolicy().hasHeightForWidth()) + self.label_2.setSizePolicy(sizePolicy) + self.label_2.setObjectName("label_2") + self.horizontalLayout_22.addWidget(self.label_2) + self.comboBox_deseq2_group1 = QtWidgets.QComboBox(self.tab_19) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.comboBox_deseq2_group1.sizePolicy().hasHeightForWidth()) + self.comboBox_deseq2_group1.setSizePolicy(sizePolicy) + self.comboBox_deseq2_group1.setObjectName("comboBox_deseq2_group1") + self.horizontalLayout_22.addWidget(self.comboBox_deseq2_group1) + self.label_3 = QtWidgets.QLabel(self.tab_19) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.label_131.sizePolicy().hasHeightForWidth()) - self.label_131.setSizePolicy(sizePolicy) - self.label_131.setObjectName("label_131") - self.horizontalLayout_15.addWidget(self.label_131) - self.checkBox_top_heatmap_show_all_labels_x = QtWidgets.QCheckBox(self.tab_2) + sizePolicy.setHeightForWidth(self.label_3.sizePolicy().hasHeightForWidth()) + self.label_3.setSizePolicy(sizePolicy) + self.label_3.setObjectName("label_3") + self.horizontalLayout_22.addWidget(self.label_3) + self.comboBox_deseq2_group2 = QtWidgets.QComboBox(self.tab_19) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.comboBox_deseq2_group2.sizePolicy().hasHeightForWidth()) + self.comboBox_deseq2_group2.setSizePolicy(sizePolicy) + self.comboBox_deseq2_group2.setObjectName("comboBox_deseq2_group2") + self.horizontalLayout_22.addWidget(self.comboBox_deseq2_group2) + self.gridLayout_16.addLayout(self.horizontalLayout_22, 3, 1, 1, 2) + self.pushButton_deseq2 = QtWidgets.QPushButton(self.tab_19) + self.pushButton_deseq2.setEnabled(False) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Maximum) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.pushButton_deseq2.sizePolicy().hasHeightForWidth()) + self.pushButton_deseq2.setSizePolicy(sizePolicy) + self.pushButton_deseq2.setMinimumSize(QtCore.QSize(33, 0)) + self.pushButton_deseq2.setMaximumSize(QtCore.QSize(16777215, 16777215)) + self.pushButton_deseq2.setObjectName("pushButton_deseq2") + self.gridLayout_16.addWidget(self.pushButton_deseq2, 5, 0, 1, 3) + self.horizontalLayout_61 = QtWidgets.QHBoxLayout() + self.horizontalLayout_61.setObjectName("horizontalLayout_61") + self.comboBox_table_for_deseq2 = QtWidgets.QComboBox(self.tab_19) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.checkBox_top_heatmap_show_all_labels_x.sizePolicy().hasHeightForWidth()) - self.checkBox_top_heatmap_show_all_labels_x.setSizePolicy(sizePolicy) - self.checkBox_top_heatmap_show_all_labels_x.setLayoutDirection(QtCore.Qt.RightToLeft) - self.checkBox_top_heatmap_show_all_labels_x.setObjectName("checkBox_top_heatmap_show_all_labels_x") - self.horizontalLayout_15.addWidget(self.checkBox_top_heatmap_show_all_labels_x) - self.checkBox_top_heatmap_show_all_labels_y = QtWidgets.QCheckBox(self.tab_2) + sizePolicy.setHeightForWidth(self.comboBox_table_for_deseq2.sizePolicy().hasHeightForWidth()) + self.comboBox_table_for_deseq2.setSizePolicy(sizePolicy) + self.comboBox_table_for_deseq2.setObjectName("comboBox_table_for_deseq2") + self.comboBox_table_for_deseq2.addItem("") + self.comboBox_table_for_deseq2.addItem("") + self.comboBox_table_for_deseq2.addItem("") + self.comboBox_table_for_deseq2.addItem("") + self.horizontalLayout_61.addWidget(self.comboBox_table_for_deseq2) + self.label_147 = QtWidgets.QLabel(self.tab_19) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Preferred) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.label_147.sizePolicy().hasHeightForWidth()) + self.label_147.setSizePolicy(sizePolicy) + self.label_147.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter) + self.label_147.setObjectName("label_147") + self.horizontalLayout_61.addWidget(self.label_147) + self.comboBox_deseq2_meta = QtWidgets.QComboBox(self.tab_19) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.comboBox_deseq2_meta.sizePolicy().hasHeightForWidth()) + self.comboBox_deseq2_meta.setSizePolicy(sizePolicy) + self.comboBox_deseq2_meta.setObjectName("comboBox_deseq2_meta") + self.horizontalLayout_61.addWidget(self.comboBox_deseq2_meta) + self.gridLayout_16.addLayout(self.horizontalLayout_61, 0, 1, 1, 1) + self.label_4 = QtWidgets.QLabel(self.tab_19) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.label_4.sizePolicy().hasHeightForWidth()) + self.label_4.setSizePolicy(sizePolicy) + self.label_4.setObjectName("label_4") + self.gridLayout_16.addWidget(self.label_4, 0, 0, 1, 1) + self.horizontalLayout_40 = QtWidgets.QHBoxLayout() + self.horizontalLayout_40.setObjectName("horizontalLayout_40") + self.checkBox_deseq2_comparing_in_condition = QtWidgets.QCheckBox(self.tab_19) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.checkBox_top_heatmap_show_all_labels_y.sizePolicy().hasHeightForWidth()) - self.checkBox_top_heatmap_show_all_labels_y.setSizePolicy(sizePolicy) - self.checkBox_top_heatmap_show_all_labels_y.setLayoutDirection(QtCore.Qt.RightToLeft) - self.checkBox_top_heatmap_show_all_labels_y.setObjectName("checkBox_top_heatmap_show_all_labels_y") - self.horizontalLayout_15.addWidget(self.checkBox_top_heatmap_show_all_labels_y) - self.gridLayout_top_heatmap_plot.addLayout(self.horizontalLayout_15, 2, 4, 1, 1) - self.horizontalLayout_19 = QtWidgets.QHBoxLayout() - self.horizontalLayout_19.setObjectName("horizontalLayout_19") - self.label_109 = QtWidgets.QLabel(self.tab_2) + sizePolicy.setHeightForWidth(self.checkBox_deseq2_comparing_in_condition.sizePolicy().hasHeightForWidth()) + self.checkBox_deseq2_comparing_in_condition.setSizePolicy(sizePolicy) + self.checkBox_deseq2_comparing_in_condition.setLayoutDirection(QtCore.Qt.RightToLeft) + self.checkBox_deseq2_comparing_in_condition.setObjectName("checkBox_deseq2_comparing_in_condition") + self.horizontalLayout_40.addWidget(self.checkBox_deseq2_comparing_in_condition) + self.comboBox_deseq2_condition_meta = QtWidgets.QComboBox(self.tab_19) + self.comboBox_deseq2_condition_meta.setEnabled(False) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.comboBox_deseq2_condition_meta.sizePolicy().hasHeightForWidth()) + self.comboBox_deseq2_condition_meta.setSizePolicy(sizePolicy) + self.comboBox_deseq2_condition_meta.setObjectName("comboBox_deseq2_condition_meta") + self.horizontalLayout_40.addWidget(self.comboBox_deseq2_condition_meta) + self.horizontalLayout_75 = QtWidgets.QHBoxLayout() + self.horizontalLayout_75.setObjectName("horizontalLayout_75") + self.comboBox_deseq2_condition_group = QtWidgets.QComboBox(self.tab_19) + self.comboBox_deseq2_condition_group.setEnabled(False) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.comboBox_deseq2_condition_group.sizePolicy().hasHeightForWidth()) + self.comboBox_deseq2_condition_group.setSizePolicy(sizePolicy) + self.comboBox_deseq2_condition_group.setObjectName("comboBox_deseq2_condition_group") + self.horizontalLayout_75.addWidget(self.comboBox_deseq2_condition_group) + self.horizontalLayout_40.addLayout(self.horizontalLayout_75) + self.gridLayout_16.addLayout(self.horizontalLayout_40, 0, 2, 1, 1) + self.line = QtWidgets.QFrame(self.tab_19) + self.line.setFrameShape(QtWidgets.QFrame.HLine) + self.line.setFrameShadow(QtWidgets.QFrame.Sunken) + self.line.setObjectName("line") + self.gridLayout_16.addWidget(self.line, 1, 0, 1, 3) + self.toolBox_3 = QtWidgets.QToolBox(self.tab_19) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Preferred) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.toolBox_3.sizePolicy().hasHeightForWidth()) + self.toolBox_3.setSizePolicy(sizePolicy) + self.toolBox_3.setMaximumSize(QtCore.QSize(16777215, 200)) + self.toolBox_3.setObjectName("toolBox_3") + self.page_8 = QtWidgets.QWidget() + self.page_8.setGeometry(QtCore.QRect(0, 0, 207, 70)) + self.page_8.setObjectName("page_8") + self.gridLayout_49 = QtWidgets.QGridLayout(self.page_8) + self.gridLayout_49.setObjectName("gridLayout_49") + self.pushButton_deseq2_plot_sankey = QtWidgets.QPushButton(self.page_8) + self.pushButton_deseq2_plot_sankey.setEnabled(False) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.pushButton_deseq2_plot_sankey.sizePolicy().hasHeightForWidth()) + self.pushButton_deseq2_plot_sankey.setSizePolicy(sizePolicy) + self.pushButton_deseq2_plot_sankey.setObjectName("pushButton_deseq2_plot_sankey") + self.gridLayout_49.addWidget(self.pushButton_deseq2_plot_sankey, 2, 1, 1, 1) + self.horizontalLayout_92 = QtWidgets.QHBoxLayout() + self.horizontalLayout_92.setObjectName("horizontalLayout_92") + self.label_64 = QtWidgets.QLabel(self.page_8) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.label_64.sizePolicy().hasHeightForWidth()) + self.label_64.setSizePolicy(sizePolicy) + self.label_64.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter) + self.label_64.setObjectName("label_64") + self.horizontalLayout_92.addWidget(self.label_64) + self.comboBox_deseq2_tables = QtWidgets.QComboBox(self.page_8) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.comboBox_deseq2_tables.sizePolicy().hasHeightForWidth()) + self.comboBox_deseq2_tables.setSizePolicy(sizePolicy) + self.comboBox_deseq2_tables.setObjectName("comboBox_deseq2_tables") + self.horizontalLayout_92.addWidget(self.comboBox_deseq2_tables) + self.gridLayout_49.addLayout(self.horizontalLayout_92, 0, 0, 1, 1) + self.pushButton_deseq2_plot_vocano = QtWidgets.QPushButton(self.page_8) + self.pushButton_deseq2_plot_vocano.setEnabled(False) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.pushButton_deseq2_plot_vocano.sizePolicy().hasHeightForWidth()) + self.pushButton_deseq2_plot_vocano.setSizePolicy(sizePolicy) + self.pushButton_deseq2_plot_vocano.setObjectName("pushButton_deseq2_plot_vocano") + self.gridLayout_49.addWidget(self.pushButton_deseq2_plot_vocano, 0, 1, 1, 1) + self.toolBox_3.addItem(self.page_8, "") + self.page_9 = QtWidgets.QWidget() + self.page_9.setGeometry(QtCore.QRect(0, 0, 888, 146)) + self.page_9.setObjectName("page_9") + self.gridLayout_48 = QtWidgets.QGridLayout(self.page_9) + self.gridLayout_48.setObjectName("gridLayout_48") + self.gridLayout_53 = QtWidgets.QGridLayout() + self.gridLayout_53.setObjectName("gridLayout_53") + self.label_16 = QtWidgets.QLabel(self.page_9) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.label_16.sizePolicy().hasHeightForWidth()) + self.label_16.setSizePolicy(sizePolicy) + self.label_16.setLayoutDirection(QtCore.Qt.LeftToRight) + self.label_16.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter) + self.label_16.setObjectName("label_16") + self.gridLayout_53.addWidget(self.label_16, 1, 0, 1, 1) + self.spinBox_fc_plot_width = QtWidgets.QSpinBox(self.page_9) + self.spinBox_fc_plot_width.setMinimum(1) + self.spinBox_fc_plot_width.setMaximum(99) + self.spinBox_fc_plot_width.setSingleStep(1) + self.spinBox_fc_plot_width.setProperty("value", 10) + self.spinBox_fc_plot_width.setObjectName("spinBox_fc_plot_width") + self.gridLayout_53.addWidget(self.spinBox_fc_plot_width, 1, 1, 1, 1) + self.label_17 = QtWidgets.QLabel(self.page_9) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.label_17.sizePolicy().hasHeightForWidth()) + self.label_17.setSizePolicy(sizePolicy) + self.label_17.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter) + self.label_17.setObjectName("label_17") + self.gridLayout_53.addWidget(self.label_17, 1, 2, 1, 1) + self.label_14 = QtWidgets.QLabel(self.page_9) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.label_14.sizePolicy().hasHeightForWidth()) + self.label_14.setSizePolicy(sizePolicy) + self.label_14.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter) + self.label_14.setObjectName("label_14") + self.gridLayout_53.addWidget(self.label_14, 0, 0, 1, 1) + self.comboBox_deseq2_p_type = QtWidgets.QComboBox(self.page_9) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.comboBox_deseq2_p_type.sizePolicy().hasHeightForWidth()) + self.comboBox_deseq2_p_type.setSizePolicy(sizePolicy) + self.comboBox_deseq2_p_type.setObjectName("comboBox_deseq2_p_type") + self.comboBox_deseq2_p_type.addItem("") + self.comboBox_deseq2_p_type.addItem("") + self.gridLayout_53.addWidget(self.comboBox_deseq2_p_type, 0, 1, 1, 1) + self.spinBox_fc_plot_height = QtWidgets.QSpinBox(self.page_9) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.spinBox_fc_plot_height.sizePolicy().hasHeightForWidth()) + self.spinBox_fc_plot_height.setSizePolicy(sizePolicy) + self.spinBox_fc_plot_height.setMinimum(1) + self.spinBox_fc_plot_height.setMaximum(99) + self.spinBox_fc_plot_height.setSingleStep(1) + self.spinBox_fc_plot_height.setProperty("value", 8) + self.spinBox_fc_plot_height.setObjectName("spinBox_fc_plot_height") + self.gridLayout_53.addWidget(self.spinBox_fc_plot_height, 1, 3, 1, 1) + self.label_71 = QtWidgets.QLabel(self.page_9) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Maximum) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.label_71.sizePolicy().hasHeightForWidth()) + self.label_71.setSizePolicy(sizePolicy) + self.label_71.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter) + self.label_71.setObjectName("label_71") + self.gridLayout_53.addWidget(self.label_71, 0, 4, 1, 1) + self.label_156 = QtWidgets.QLabel(self.page_9) + self.label_156.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter) + self.label_156.setObjectName("label_156") + self.gridLayout_53.addWidget(self.label_156, 1, 4, 1, 1) + self.doubleSpinBox_deseq2_log2fc_min = QtWidgets.QDoubleSpinBox(self.page_9) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.doubleSpinBox_deseq2_log2fc_min.sizePolicy().hasHeightForWidth()) + self.doubleSpinBox_deseq2_log2fc_min.setSizePolicy(sizePolicy) + self.doubleSpinBox_deseq2_log2fc_min.setDecimals(1) + self.doubleSpinBox_deseq2_log2fc_min.setProperty("value", 1.0) + self.doubleSpinBox_deseq2_log2fc_min.setObjectName("doubleSpinBox_deseq2_log2fc_min") + self.gridLayout_53.addWidget(self.doubleSpinBox_deseq2_log2fc_min, 0, 5, 1, 1) + self.spinBox_seqeq2_font_size = QtWidgets.QSpinBox(self.page_9) + self.spinBox_seqeq2_font_size.setMinimum(1) + self.spinBox_seqeq2_font_size.setProperty("value", 12) + self.spinBox_seqeq2_font_size.setObjectName("spinBox_seqeq2_font_size") + self.gridLayout_53.addWidget(self.spinBox_seqeq2_font_size, 1, 5, 1, 1) + self.label_63 = QtWidgets.QLabel(self.page_9) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Preferred) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.label_63.sizePolicy().hasHeightForWidth()) + self.label_63.setSizePolicy(sizePolicy) + self.label_63.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter) + self.label_63.setObjectName("label_63") + self.gridLayout_53.addWidget(self.label_63, 0, 6, 1, 1) + self.doubleSpinBox_deseq2_log2fc_max = QtWidgets.QDoubleSpinBox(self.page_9) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.doubleSpinBox_deseq2_log2fc_max.sizePolicy().hasHeightForWidth()) + self.doubleSpinBox_deseq2_log2fc_max.setSizePolicy(sizePolicy) + self.doubleSpinBox_deseq2_log2fc_max.setDecimals(1) + self.doubleSpinBox_deseq2_log2fc_max.setProperty("value", 20.0) + self.doubleSpinBox_deseq2_log2fc_max.setObjectName("doubleSpinBox_deseq2_log2fc_max") + self.gridLayout_53.addWidget(self.doubleSpinBox_deseq2_log2fc_max, 0, 7, 1, 1) + self.doubleSpinBox_deseq2_pvalue = QtWidgets.QDoubleSpinBox(self.page_9) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.doubleSpinBox_deseq2_pvalue.sizePolicy().hasHeightForWidth()) + self.doubleSpinBox_deseq2_pvalue.setSizePolicy(sizePolicy) + self.doubleSpinBox_deseq2_pvalue.setDecimals(4) + self.doubleSpinBox_deseq2_pvalue.setMaximum(1.0) + self.doubleSpinBox_deseq2_pvalue.setSingleStep(0.01) + self.doubleSpinBox_deseq2_pvalue.setProperty("value", 0.05) + self.doubleSpinBox_deseq2_pvalue.setObjectName("doubleSpinBox_deseq2_pvalue") + self.gridLayout_53.addWidget(self.doubleSpinBox_deseq2_pvalue, 0, 2, 1, 2) + self.gridLayout_48.addLayout(self.gridLayout_53, 0, 1, 1, 1) + self.toolBox_3.addItem(self.page_9, "") + self.gridLayout_16.addWidget(self.toolBox_3, 6, 0, 1, 3) + self.tabWidget_3.addTab(self.tab_19, "") + self.tab_4 = QtWidgets.QWidget() + self.tab_4.setObjectName("tab_4") + self.gridLayout_10 = QtWidgets.QGridLayout(self.tab_4) + self.gridLayout_10.setObjectName("gridLayout_10") + self.label_55 = QtWidgets.QLabel(self.tab_4) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Preferred) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.label_55.sizePolicy().hasHeightForWidth()) + self.label_55.setSizePolicy(sizePolicy) + self.label_55.setObjectName("label_55") + self.gridLayout_10.addWidget(self.label_55, 3, 0, 1, 1) + self.line_2 = QtWidgets.QFrame(self.tab_4) + self.line_2.setFrameShape(QtWidgets.QFrame.HLine) + self.line_2.setFrameShadow(QtWidgets.QFrame.Sunken) + self.line_2.setObjectName("line_2") + self.gridLayout_10.addWidget(self.line_2, 5, 0, 1, 4) + self.label_tukey_func_num = QtWidgets.QLabel(self.tab_4) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Preferred) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.label_tukey_func_num.sizePolicy().hasHeightForWidth()) + self.label_tukey_func_num.setSizePolicy(sizePolicy) + self.label_tukey_func_num.setObjectName("label_tukey_func_num") + self.gridLayout_10.addWidget(self.label_tukey_func_num, 2, 2, 1, 1) + self.pushButton_show_linked_func = QtWidgets.QPushButton(self.tab_4) + self.pushButton_show_linked_func.setEnabled(False) + self.pushButton_show_linked_func.setObjectName("pushButton_show_linked_func") + self.gridLayout_10.addWidget(self.pushButton_show_linked_func, 3, 3, 1, 1) + self.pushButton_tukey_fresh = QtWidgets.QPushButton(self.tab_4) + self.pushButton_tukey_fresh.setEnabled(False) + self.pushButton_tukey_fresh.setObjectName("pushButton_tukey_fresh") + self.gridLayout_10.addWidget(self.pushButton_tukey_fresh, 4, 1, 1, 1) + self.label_111 = QtWidgets.QLabel(self.tab_4) + self.label_111.setObjectName("label_111") + self.gridLayout_10.addWidget(self.label_111, 7, 2, 1, 1) + self.comboBox_tukey_func = QtWidgets.QComboBox(self.tab_4) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.comboBox_tukey_func.sizePolicy().hasHeightForWidth()) + self.comboBox_tukey_func.setSizePolicy(sizePolicy) + self.comboBox_tukey_func.setEditable(True) + self.comboBox_tukey_func.setObjectName("comboBox_tukey_func") + self.gridLayout_10.addWidget(self.comboBox_tukey_func, 2, 1, 1, 1) + self.label_54 = QtWidgets.QLabel(self.tab_4) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.label_54.sizePolicy().hasHeightForWidth()) + self.label_54.setSizePolicy(sizePolicy) + self.label_54.setObjectName("label_54") + self.gridLayout_10.addWidget(self.label_54, 2, 0, 1, 1) + self.comboBox_tukey_by_sum_each = QtWidgets.QComboBox(self.tab_4) + self.comboBox_tukey_by_sum_each.setObjectName("comboBox_tukey_by_sum_each") + self.comboBox_tukey_by_sum_each.addItem("") + self.comboBox_tukey_by_sum_each.addItem("") + self.gridLayout_10.addWidget(self.comboBox_tukey_by_sum_each, 7, 3, 1, 1) + self.pushButton_show_linked_taxa = QtWidgets.QPushButton(self.tab_4) + self.pushButton_show_linked_taxa.setEnabled(False) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.pushButton_show_linked_taxa.sizePolicy().hasHeightForWidth()) + self.pushButton_show_linked_taxa.setSizePolicy(sizePolicy) + self.pushButton_show_linked_taxa.setObjectName("pushButton_show_linked_taxa") + self.gridLayout_10.addWidget(self.pushButton_show_linked_taxa, 2, 3, 1, 1) + self.pushButton_plot_tukey = QtWidgets.QPushButton(self.tab_4) + self.pushButton_plot_tukey.setEnabled(False) + self.pushButton_plot_tukey.setObjectName("pushButton_plot_tukey") + self.gridLayout_10.addWidget(self.pushButton_plot_tukey, 8, 3, 1, 1) + self.label_tukey_taxa_num = QtWidgets.QLabel(self.tab_4) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.label_109.sizePolicy().hasHeightForWidth()) - self.label_109.setSizePolicy(sizePolicy) - self.label_109.setObjectName("label_109") - self.horizontalLayout_19.addWidget(self.label_109) - self.spinBox_top_heatmap_label_font_size = QtWidgets.QSpinBox(self.tab_2) + sizePolicy.setHeightForWidth(self.label_tukey_taxa_num.sizePolicy().hasHeightForWidth()) + self.label_tukey_taxa_num.setSizePolicy(sizePolicy) + self.label_tukey_taxa_num.setObjectName("label_tukey_taxa_num") + self.gridLayout_10.addWidget(self.label_tukey_taxa_num, 3, 2, 1, 1) + self.comboBox_tukey_taxa = QtWidgets.QComboBox(self.tab_4) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.spinBox_top_heatmap_label_font_size.sizePolicy().hasHeightForWidth()) - self.spinBox_top_heatmap_label_font_size.setSizePolicy(sizePolicy) - self.spinBox_top_heatmap_label_font_size.setMinimum(1) - self.spinBox_top_heatmap_label_font_size.setMaximum(999) - self.spinBox_top_heatmap_label_font_size.setSingleStep(1) - self.spinBox_top_heatmap_label_font_size.setProperty("value", 10) - self.spinBox_top_heatmap_label_font_size.setObjectName("spinBox_top_heatmap_label_font_size") - self.horizontalLayout_19.addWidget(self.spinBox_top_heatmap_label_font_size) - self.gridLayout_top_heatmap_plot.addLayout(self.horizontalLayout_19, 2, 3, 1, 1) - self.pushButton_get_top_cross_table = QtWidgets.QPushButton(self.tab_2) - self.pushButton_get_top_cross_table.setEnabled(False) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Preferred) + sizePolicy.setHeightForWidth(self.comboBox_tukey_taxa.sizePolicy().hasHeightForWidth()) + self.comboBox_tukey_taxa.setSizePolicy(sizePolicy) + self.comboBox_tukey_taxa.setEditable(True) + self.comboBox_tukey_taxa.setObjectName("comboBox_tukey_taxa") + self.gridLayout_10.addWidget(self.comboBox_tukey_taxa, 3, 1, 1, 1) + self.pushButton_tukey_test = QtWidgets.QPushButton(self.tab_4) + self.pushButton_tukey_test.setEnabled(False) + self.pushButton_tukey_test.setObjectName("pushButton_tukey_test") + self.gridLayout_10.addWidget(self.pushButton_tukey_test, 8, 1, 1, 1) + self.horizontalLayout_59 = QtWidgets.QHBoxLayout() + self.horizontalLayout_59.setObjectName("horizontalLayout_59") + self.label_106 = QtWidgets.QLabel(self.tab_4) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_get_top_cross_table.sizePolicy().hasHeightForWidth()) - self.pushButton_get_top_cross_table.setSizePolicy(sizePolicy) - self.pushButton_get_top_cross_table.setObjectName("pushButton_get_top_cross_table") - self.gridLayout_top_heatmap_plot.addWidget(self.pushButton_get_top_cross_table, 3, 6, 1, 1) + sizePolicy.setHeightForWidth(self.label_106.sizePolicy().hasHeightForWidth()) + self.label_106.setSizePolicy(sizePolicy) + self.label_106.setObjectName("label_106") + self.horizontalLayout_59.addWidget(self.label_106) + self.comboBox_tukey_meta = QtWidgets.QComboBox(self.tab_4) + self.comboBox_tukey_meta.setObjectName("comboBox_tukey_meta") + self.horizontalLayout_59.addWidget(self.comboBox_tukey_meta) + self.checkBox_tukey_in_condition = QtWidgets.QCheckBox(self.tab_4) + self.checkBox_tukey_in_condition.setLayoutDirection(QtCore.Qt.RightToLeft) + self.checkBox_tukey_in_condition.setObjectName("checkBox_tukey_in_condition") + self.horizontalLayout_59.addWidget(self.checkBox_tukey_in_condition) + self.comboBox_tukey_condition_meta = QtWidgets.QComboBox(self.tab_4) + self.comboBox_tukey_condition_meta.setEnabled(False) + self.comboBox_tukey_condition_meta.setObjectName("comboBox_tukey_condition_meta") + self.horizontalLayout_59.addWidget(self.comboBox_tukey_condition_meta) + self.horizontalLayout_72 = QtWidgets.QHBoxLayout() + self.horizontalLayout_72.setObjectName("horizontalLayout_72") + self.comboBox_tukey_condition_group = QtWidgets.QComboBox(self.tab_4) + self.comboBox_tukey_condition_group.setEnabled(False) + self.comboBox_tukey_condition_group.setObjectName("comboBox_tukey_condition_group") + self.horizontalLayout_72.addWidget(self.comboBox_tukey_condition_group) + self.horizontalLayout_59.addLayout(self.horizontalLayout_72) + self.gridLayout_10.addLayout(self.horizontalLayout_59, 0, 1, 1, 3) + self.line_16 = QtWidgets.QFrame(self.tab_4) + self.line_16.setFrameShape(QtWidgets.QFrame.HLine) + self.line_16.setFrameShadow(QtWidgets.QFrame.Sunken) + self.line_16.setObjectName("line_16") + self.gridLayout_10.addWidget(self.line_16, 1, 0, 1, 4) + self.tabWidget_3.addTab(self.tab_4, "") + self.gridLayout_9.addWidget(self.tabWidget_3, 0, 0, 1, 1) + self.toolBox_9 = QtWidgets.QToolBox(self.tab_2) + self.toolBox_9.setMinimumSize(QtCore.QSize(0, 100)) + self.toolBox_9.setMaximumSize(QtCore.QSize(16777215, 250)) + self.toolBox_9.setObjectName("toolBox_9") + self.page_20 = QtWidgets.QWidget() + self.page_20.setGeometry(QtCore.QRect(0, 0, 912, 196)) + self.page_20.setObjectName("page_20") + self.gridLayout_69 = QtWidgets.QGridLayout(self.page_20) + self.gridLayout_69.setObjectName("gridLayout_69") self.horizontalLayout_13 = QtWidgets.QHBoxLayout() self.horizontalLayout_13.setObjectName("horizontalLayout_13") - self.label_56 = QtWidgets.QLabel(self.tab_2) + self.label_56 = QtWidgets.QLabel(self.page_20) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) @@ -2046,8 +2577,8 @@ def setupUi(self, metaX_main): self.label_56.setSizePolicy(sizePolicy) self.label_56.setObjectName("label_56") self.horizontalLayout_13.addWidget(self.label_56) - self.comboBox_top_heatmap_table = QtWidgets.QComboBox(self.tab_2) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) + self.comboBox_top_heatmap_table = QtWidgets.QComboBox(self.page_20) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.MinimumExpanding, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.comboBox_top_heatmap_table.sizePolicy().hasHeightForWidth()) @@ -2056,104 +2587,39 @@ def setupUi(self, metaX_main): self.comboBox_top_heatmap_table.addItem("") self.comboBox_top_heatmap_table.setItemText(0, "") self.horizontalLayout_13.addWidget(self.comboBox_top_heatmap_table) - self.gridLayout_top_heatmap_plot.addLayout(self.horizontalLayout_13, 1, 2, 1, 1) - self.horizontalLayout_21 = QtWidgets.QHBoxLayout() - self.horizontalLayout_21.setObjectName("horizontalLayout_21") - self.label_59 = QtWidgets.QLabel(self.tab_2) - self.label_59.setObjectName("label_59") - self.horizontalLayout_21.addWidget(self.label_59) - self.spinBox_top_heatmap_width = QtWidgets.QSpinBox(self.tab_2) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.spinBox_top_heatmap_width.sizePolicy().hasHeightForWidth()) - self.spinBox_top_heatmap_width.setSizePolicy(sizePolicy) - self.spinBox_top_heatmap_width.setMinimum(1) - self.spinBox_top_heatmap_width.setMaximum(9999) - self.spinBox_top_heatmap_width.setSingleStep(1) - self.spinBox_top_heatmap_width.setProperty("value", 16) - self.spinBox_top_heatmap_width.setObjectName("spinBox_top_heatmap_width") - self.horizontalLayout_21.addWidget(self.spinBox_top_heatmap_width) - self.label_60 = QtWidgets.QLabel(self.tab_2) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) + self.gridLayout_69.addLayout(self.horizontalLayout_13, 0, 0, 1, 1) + self.pushButton_plot_top_heatmap = QtWidgets.QPushButton(self.page_20) + self.pushButton_plot_top_heatmap.setEnabled(False) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.MinimumExpanding, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.label_60.sizePolicy().hasHeightForWidth()) - self.label_60.setSizePolicy(sizePolicy) - self.label_60.setObjectName("label_60") - self.horizontalLayout_21.addWidget(self.label_60) - self.spinBox_top_heatmap_length = QtWidgets.QSpinBox(self.tab_2) + sizePolicy.setHeightForWidth(self.pushButton_plot_top_heatmap.sizePolicy().hasHeightForWidth()) + self.pushButton_plot_top_heatmap.setSizePolicy(sizePolicy) + self.pushButton_plot_top_heatmap.setMaximumSize(QtCore.QSize(16777215, 50)) + self.pushButton_plot_top_heatmap.setAutoDefault(False) + self.pushButton_plot_top_heatmap.setObjectName("pushButton_plot_top_heatmap") + self.gridLayout_69.addWidget(self.pushButton_plot_top_heatmap, 0, 1, 1, 1) + self.pushButton_get_top_cross_table = QtWidgets.QPushButton(self.page_20) + self.pushButton_get_top_cross_table.setEnabled(False) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.spinBox_top_heatmap_length.sizePolicy().hasHeightForWidth()) - self.spinBox_top_heatmap_length.setSizePolicy(sizePolicy) - self.spinBox_top_heatmap_length.setMinimum(1) - self.spinBox_top_heatmap_length.setMaximum(9999) - self.spinBox_top_heatmap_length.setProperty("value", 9) - self.spinBox_top_heatmap_length.setObjectName("spinBox_top_heatmap_length") - self.horizontalLayout_21.addWidget(self.spinBox_top_heatmap_length) - self.gridLayout_top_heatmap_plot.addLayout(self.horizontalLayout_21, 2, 2, 1, 1) - self.gridLayout_38 = QtWidgets.QGridLayout() - self.gridLayout_38.setObjectName("gridLayout_38") - self.label_138 = QtWidgets.QLabel(self.tab_2) - self.label_138.setObjectName("label_138") - self.gridLayout_38.addWidget(self.label_138, 0, 0, 1, 1) - self.label_141 = QtWidgets.QLabel(self.tab_2) - self.label_141.setObjectName("label_141") - self.gridLayout_38.addWidget(self.label_141, 1, 0, 1, 1) - self.comboBox_cross_3_level_plot_df_type = QtWidgets.QComboBox(self.tab_2) - self.comboBox_cross_3_level_plot_df_type.setObjectName("comboBox_cross_3_level_plot_df_type") - self.comboBox_cross_3_level_plot_df_type.addItem("") - self.comboBox_cross_3_level_plot_df_type.addItem("") - self.comboBox_cross_3_level_plot_df_type.addItem("") - self.gridLayout_38.addWidget(self.comboBox_cross_3_level_plot_df_type, 1, 1, 1, 1) - self.doubleSpinBox_mini_log2fc_heatmap = QtWidgets.QDoubleSpinBox(self.tab_2) - self.doubleSpinBox_mini_log2fc_heatmap.setEnabled(True) - self.doubleSpinBox_mini_log2fc_heatmap.setProperty("showGroupSeparator", False) - self.doubleSpinBox_mini_log2fc_heatmap.setDecimals(3) - self.doubleSpinBox_mini_log2fc_heatmap.setMinimum(0.0) - self.doubleSpinBox_mini_log2fc_heatmap.setProperty("value", 1.0) - self.doubleSpinBox_mini_log2fc_heatmap.setObjectName("doubleSpinBox_mini_log2fc_heatmap") - self.gridLayout_38.addWidget(self.doubleSpinBox_mini_log2fc_heatmap, 0, 1, 1, 1) - self.label_139 = QtWidgets.QLabel(self.tab_2) - self.label_139.setObjectName("label_139") - self.gridLayout_38.addWidget(self.label_139, 0, 2, 1, 1) - self.doubleSpinBox_max_log2fc_heatmap = QtWidgets.QDoubleSpinBox(self.tab_2) - self.doubleSpinBox_max_log2fc_heatmap.setEnabled(True) - self.doubleSpinBox_max_log2fc_heatmap.setDecimals(3) - self.doubleSpinBox_max_log2fc_heatmap.setProperty("value", 30.0) - self.doubleSpinBox_max_log2fc_heatmap.setObjectName("doubleSpinBox_max_log2fc_heatmap") - self.gridLayout_38.addWidget(self.doubleSpinBox_max_log2fc_heatmap, 0, 3, 1, 1) - self.checkBox_cross_3_level_plot_remove_zero_col = QtWidgets.QCheckBox(self.tab_2) - self.checkBox_cross_3_level_plot_remove_zero_col.setChecked(True) - self.checkBox_cross_3_level_plot_remove_zero_col.setObjectName("checkBox_cross_3_level_plot_remove_zero_col") - self.gridLayout_38.addWidget(self.checkBox_cross_3_level_plot_remove_zero_col, 1, 2, 1, 2) - self.gridLayout_top_heatmap_plot.addLayout(self.gridLayout_38, 2, 5, 2, 1) - self.horizontalLayout_17 = QtWidgets.QHBoxLayout() - self.horizontalLayout_17.setObjectName("horizontalLayout_17") - self.label_153 = QtWidgets.QLabel(self.tab_2) - self.label_153.setObjectName("label_153") - self.horizontalLayout_17.addWidget(self.label_153) - self.checkBox_top_heatmap_rename_taxa = QtWidgets.QCheckBox(self.tab_2) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.checkBox_top_heatmap_rename_taxa.sizePolicy().hasHeightForWidth()) - self.checkBox_top_heatmap_rename_taxa.setSizePolicy(sizePolicy) - self.checkBox_top_heatmap_rename_taxa.setLayoutDirection(QtCore.Qt.RightToLeft) - self.checkBox_top_heatmap_rename_taxa.setChecked(True) - self.checkBox_top_heatmap_rename_taxa.setObjectName("checkBox_top_heatmap_rename_taxa") - self.horizontalLayout_17.addWidget(self.checkBox_top_heatmap_rename_taxa) - self.checkBox_top_heatmap_rename_sample = QtWidgets.QCheckBox(self.tab_2) - self.checkBox_top_heatmap_rename_sample.setLayoutDirection(QtCore.Qt.RightToLeft) - self.checkBox_top_heatmap_rename_sample.setChecked(True) - self.checkBox_top_heatmap_rename_sample.setObjectName("checkBox_top_heatmap_rename_sample") - self.horizontalLayout_17.addWidget(self.checkBox_top_heatmap_rename_sample) - self.gridLayout_top_heatmap_plot.addLayout(self.horizontalLayout_17, 3, 4, 1, 1) + sizePolicy.setHeightForWidth(self.pushButton_get_top_cross_table.sizePolicy().hasHeightForWidth()) + self.pushButton_get_top_cross_table.setSizePolicy(sizePolicy) + self.pushButton_get_top_cross_table.setMaximumSize(QtCore.QSize(16777215, 30)) + self.pushButton_get_top_cross_table.setObjectName("pushButton_get_top_cross_table") + self.gridLayout_69.addWidget(self.pushButton_get_top_cross_table, 1, 1, 1, 1) + self.toolBox_9.addItem(self.page_20, "") + self.page_21 = QtWidgets.QWidget() + self.page_21.setGeometry(QtCore.QRect(0, 0, 895, 137)) + self.page_21.setObjectName("page_21") + self.gridLayout_68 = QtWidgets.QGridLayout(self.page_21) + self.gridLayout_68.setObjectName("gridLayout_68") + self.gridLayout_top_heatmap_plot = QtWidgets.QGridLayout() + self.gridLayout_top_heatmap_plot.setObjectName("gridLayout_top_heatmap_plot") self.horizontalLayout_18 = QtWidgets.QHBoxLayout() self.horizontalLayout_18.setObjectName("horizontalLayout_18") - self.label_57 = QtWidgets.QLabel(self.tab_2) + self.label_57 = QtWidgets.QLabel(self.page_21) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) @@ -2161,7 +2627,7 @@ def setupUi(self, metaX_main): self.label_57.setSizePolicy(sizePolicy) self.label_57.setObjectName("label_57") self.horizontalLayout_18.addWidget(self.label_57) - self.comboBox_top_heatmap_sort_type = QtWidgets.QComboBox(self.tab_2) + self.comboBox_top_heatmap_sort_type = QtWidgets.QComboBox(self.page_21) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) @@ -2172,366 +2638,396 @@ def setupUi(self, metaX_main): self.comboBox_top_heatmap_sort_type.addItem("") self.comboBox_top_heatmap_sort_type.addItem("") self.horizontalLayout_18.addWidget(self.comboBox_top_heatmap_sort_type) - self.gridLayout_top_heatmap_plot.addLayout(self.horizontalLayout_18, 1, 3, 1, 1) - self.line_5 = QtWidgets.QFrame(self.tab_2) - self.line_5.setFrameShape(QtWidgets.QFrame.HLine) - self.line_5.setFrameShadow(QtWidgets.QFrame.Sunken) - self.line_5.setObjectName("line_5") - self.gridLayout_top_heatmap_plot.addWidget(self.line_5, 0, 2, 1, 5) - self.horizontalLayout_12 = QtWidgets.QHBoxLayout() - self.horizontalLayout_12.setObjectName("horizontalLayout_12") - self.label_62 = QtWidgets.QLabel(self.tab_2) - self.label_62.setObjectName("label_62") - self.horizontalLayout_12.addWidget(self.label_62) - self.comboBox_top_heatmap_scale = QtWidgets.QComboBox(self.tab_2) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) + self.gridLayout_top_heatmap_plot.addLayout(self.horizontalLayout_18, 3, 2, 1, 1) + self.label_180 = QtWidgets.QLabel(self.page_21) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.comboBox_top_heatmap_scale.sizePolicy().hasHeightForWidth()) - self.comboBox_top_heatmap_scale.setSizePolicy(sizePolicy) - self.comboBox_top_heatmap_scale.setObjectName("comboBox_top_heatmap_scale") - self.comboBox_top_heatmap_scale.addItem("") - self.comboBox_top_heatmap_scale.addItem("") - self.comboBox_top_heatmap_scale.addItem("") - self.horizontalLayout_12.addWidget(self.comboBox_top_heatmap_scale) - self.label_38 = QtWidgets.QLabel(self.tab_2) - self.label_38.setObjectName("label_38") - self.horizontalLayout_12.addWidget(self.label_38) - self.comboBox_top_heatmap_cmap = QtWidgets.QComboBox(self.tab_2) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHeightForWidth(self.label_180.sizePolicy().hasHeightForWidth()) + self.label_180.setSizePolicy(sizePolicy) + self.label_180.setMinimumSize(QtCore.QSize(150, 0)) + self.label_180.setMaximumSize(QtCore.QSize(150, 16777215)) + font = QtGui.QFont() + font.setBold(True) + font.setWeight(75) + self.label_180.setFont(font) + self.label_180.setObjectName("label_180") + self.gridLayout_top_heatmap_plot.addWidget(self.label_180, 3, 0, 1, 1) + self.horizontalLayout_21 = QtWidgets.QHBoxLayout() + self.horizontalLayout_21.setObjectName("horizontalLayout_21") + self.label_59 = QtWidgets.QLabel(self.page_21) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.comboBox_top_heatmap_cmap.sizePolicy().hasHeightForWidth()) - self.comboBox_top_heatmap_cmap.setSizePolicy(sizePolicy) - self.comboBox_top_heatmap_cmap.setObjectName("comboBox_top_heatmap_cmap") - self.horizontalLayout_12.addWidget(self.comboBox_top_heatmap_cmap) - self.gridLayout_top_heatmap_plot.addLayout(self.horizontalLayout_12, 3, 3, 1, 1) - self.horizontalLayout_14 = QtWidgets.QHBoxLayout() - self.horizontalLayout_14.setObjectName("horizontalLayout_14") - self.label_58 = QtWidgets.QLabel(self.tab_2) - self.label_58.setObjectName("label_58") - self.horizontalLayout_14.addWidget(self.label_58) - self.spinBox_top_heatmap_number = QtWidgets.QSpinBox(self.tab_2) + sizePolicy.setHeightForWidth(self.label_59.sizePolicy().hasHeightForWidth()) + self.label_59.setSizePolicy(sizePolicy) + self.label_59.setMinimumSize(QtCore.QSize(70, 0)) + self.label_59.setMaximumSize(QtCore.QSize(100, 16777215)) + self.label_59.setObjectName("label_59") + self.horizontalLayout_21.addWidget(self.label_59) + self.spinBox_top_heatmap_width = QtWidgets.QSpinBox(self.page_21) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.spinBox_top_heatmap_number.sizePolicy().hasHeightForWidth()) - self.spinBox_top_heatmap_number.setSizePolicy(sizePolicy) - self.spinBox_top_heatmap_number.setMinimum(1) - self.spinBox_top_heatmap_number.setMaximum(9999) - self.spinBox_top_heatmap_number.setProperty("value", 100) - self.spinBox_top_heatmap_number.setObjectName("spinBox_top_heatmap_number") - self.horizontalLayout_14.addWidget(self.spinBox_top_heatmap_number) - self.gridLayout_top_heatmap_plot.addLayout(self.horizontalLayout_14, 1, 4, 1, 1) - self.horizontalLayout_16 = QtWidgets.QHBoxLayout() - self.horizontalLayout_16.setObjectName("horizontalLayout_16") - self.label_30 = QtWidgets.QLabel(self.tab_2) - self.label_30.setObjectName("label_30") - self.horizontalLayout_16.addWidget(self.label_30) - self.doubleSpinBox_top_heatmap_pvalue = QtWidgets.QDoubleSpinBox(self.tab_2) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.MinimumExpanding, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHeightForWidth(self.spinBox_top_heatmap_width.sizePolicy().hasHeightForWidth()) + self.spinBox_top_heatmap_width.setSizePolicy(sizePolicy) + self.spinBox_top_heatmap_width.setMinimum(1) + self.spinBox_top_heatmap_width.setMaximum(9999) + self.spinBox_top_heatmap_width.setSingleStep(1) + self.spinBox_top_heatmap_width.setProperty("value", 16) + self.spinBox_top_heatmap_width.setObjectName("spinBox_top_heatmap_width") + self.horizontalLayout_21.addWidget(self.spinBox_top_heatmap_width) + self.label_60 = QtWidgets.QLabel(self.page_21) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.doubleSpinBox_top_heatmap_pvalue.sizePolicy().hasHeightForWidth()) - self.doubleSpinBox_top_heatmap_pvalue.setSizePolicy(sizePolicy) - self.doubleSpinBox_top_heatmap_pvalue.setDecimals(4) - self.doubleSpinBox_top_heatmap_pvalue.setMaximum(1.0) - self.doubleSpinBox_top_heatmap_pvalue.setSingleStep(0.01) - self.doubleSpinBox_top_heatmap_pvalue.setProperty("value", 0.05) - self.doubleSpinBox_top_heatmap_pvalue.setObjectName("doubleSpinBox_top_heatmap_pvalue") - self.horizontalLayout_16.addWidget(self.doubleSpinBox_top_heatmap_pvalue) - self.gridLayout_top_heatmap_plot.addLayout(self.horizontalLayout_16, 1, 5, 1, 1) - self.gridLayout_9.addLayout(self.gridLayout_top_heatmap_plot, 2, 0, 1, 1) - self.tabWidget_TaxaFuncAnalyzer.addTab(self.tab_2, "") - self.tab_diff_stats = QtWidgets.QWidget() - self.tab_diff_stats.setObjectName("tab_diff_stats") - self.gridLayout_12 = QtWidgets.QGridLayout(self.tab_diff_stats) - self.gridLayout_12.setObjectName("gridLayout_12") - self.tabWidget = QtWidgets.QTabWidget(self.tab_diff_stats) - self.tabWidget.setObjectName("tabWidget") - self.tab_6 = QtWidgets.QWidget() - self.tab_6.setObjectName("tab_6") - self.gridLayout_16 = QtWidgets.QGridLayout(self.tab_6) - self.gridLayout_16.setObjectName("gridLayout_16") - self.horizontalLayout_63 = QtWidgets.QHBoxLayout() - self.horizontalLayout_63.setObjectName("horizontalLayout_63") - self.label_64 = QtWidgets.QLabel(self.tab_6) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHeightForWidth(self.label_60.sizePolicy().hasHeightForWidth()) + self.label_60.setSizePolicy(sizePolicy) + self.label_60.setObjectName("label_60") + self.horizontalLayout_21.addWidget(self.label_60) + self.spinBox_top_heatmap_length = QtWidgets.QSpinBox(self.page_21) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.label_64.sizePolicy().hasHeightForWidth()) - self.label_64.setSizePolicy(sizePolicy) - self.label_64.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter) - self.label_64.setObjectName("label_64") - self.horizontalLayout_63.addWidget(self.label_64) - self.comboBox_deseq2_tables = QtWidgets.QComboBox(self.tab_6) - self.comboBox_deseq2_tables.setObjectName("comboBox_deseq2_tables") - self.horizontalLayout_63.addWidget(self.comboBox_deseq2_tables) - self.label_156 = QtWidgets.QLabel(self.tab_6) - self.label_156.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter) - self.label_156.setObjectName("label_156") - self.horizontalLayout_63.addWidget(self.label_156) - self.spinBox_seqeq2_font_size = QtWidgets.QSpinBox(self.tab_6) - self.spinBox_seqeq2_font_size.setMinimum(1) - self.spinBox_seqeq2_font_size.setProperty("value", 12) - self.spinBox_seqeq2_font_size.setObjectName("spinBox_seqeq2_font_size") - self.horizontalLayout_63.addWidget(self.spinBox_seqeq2_font_size) - self.gridLayout_16.addLayout(self.horizontalLayout_63, 11, 0, 1, 1) - self.horizontalLayout_48 = QtWidgets.QHBoxLayout() - self.horizontalLayout_48.setObjectName("horizontalLayout_48") - self.label_14 = QtWidgets.QLabel(self.tab_6) + sizePolicy.setHeightForWidth(self.spinBox_top_heatmap_length.sizePolicy().hasHeightForWidth()) + self.spinBox_top_heatmap_length.setSizePolicy(sizePolicy) + self.spinBox_top_heatmap_length.setMinimum(1) + self.spinBox_top_heatmap_length.setMaximum(9999) + self.spinBox_top_heatmap_length.setProperty("value", 9) + self.spinBox_top_heatmap_length.setObjectName("spinBox_top_heatmap_length") + self.horizontalLayout_21.addWidget(self.spinBox_top_heatmap_length) + self.gridLayout_top_heatmap_plot.addLayout(self.horizontalLayout_21, 0, 1, 1, 1) + self.label_182 = QtWidgets.QLabel(self.page_21) + self.label_182.setMinimumSize(QtCore.QSize(150, 0)) + self.label_182.setMaximumSize(QtCore.QSize(150, 16777215)) + font = QtGui.QFont() + font.setBold(True) + font.setWeight(75) + self.label_182.setFont(font) + self.label_182.setObjectName("label_182") + self.gridLayout_top_heatmap_plot.addWidget(self.label_182, 0, 0, 1, 1) + self.horizontalLayout_14 = QtWidgets.QHBoxLayout() + self.horizontalLayout_14.setObjectName("horizontalLayout_14") + self.label_58 = QtWidgets.QLabel(self.page_21) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.label_14.sizePolicy().hasHeightForWidth()) - self.label_14.setSizePolicy(sizePolicy) - self.label_14.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter) - self.label_14.setObjectName("label_14") - self.horizontalLayout_48.addWidget(self.label_14) - self.comboBox_deseq2_p_type = QtWidgets.QComboBox(self.tab_6) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHeightForWidth(self.label_58.sizePolicy().hasHeightForWidth()) + self.label_58.setSizePolicy(sizePolicy) + self.label_58.setMinimumSize(QtCore.QSize(70, 0)) + self.label_58.setMaximumSize(QtCore.QSize(50, 16777215)) + self.label_58.setObjectName("label_58") + self.horizontalLayout_14.addWidget(self.label_58) + self.spinBox_top_heatmap_number = QtWidgets.QSpinBox(self.page_21) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.comboBox_deseq2_p_type.sizePolicy().hasHeightForWidth()) - self.comboBox_deseq2_p_type.setSizePolicy(sizePolicy) - self.comboBox_deseq2_p_type.setObjectName("comboBox_deseq2_p_type") - self.comboBox_deseq2_p_type.addItem("") - self.comboBox_deseq2_p_type.addItem("") - self.horizontalLayout_48.addWidget(self.comboBox_deseq2_p_type) - self.doubleSpinBox_deseq2_pvalue = QtWidgets.QDoubleSpinBox(self.tab_6) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHeightForWidth(self.spinBox_top_heatmap_number.sizePolicy().hasHeightForWidth()) + self.spinBox_top_heatmap_number.setSizePolicy(sizePolicy) + self.spinBox_top_heatmap_number.setMinimum(1) + self.spinBox_top_heatmap_number.setMaximum(9999) + self.spinBox_top_heatmap_number.setProperty("value", 100) + self.spinBox_top_heatmap_number.setObjectName("spinBox_top_heatmap_number") + self.horizontalLayout_14.addWidget(self.spinBox_top_heatmap_number) + self.gridLayout_top_heatmap_plot.addLayout(self.horizontalLayout_14, 3, 1, 1, 1) + self.horizontalLayout_19 = QtWidgets.QHBoxLayout() + self.horizontalLayout_19.setObjectName("horizontalLayout_19") + self.label_109 = QtWidgets.QLabel(self.page_21) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.doubleSpinBox_deseq2_pvalue.sizePolicy().hasHeightForWidth()) - self.doubleSpinBox_deseq2_pvalue.setSizePolicy(sizePolicy) - self.doubleSpinBox_deseq2_pvalue.setDecimals(4) - self.doubleSpinBox_deseq2_pvalue.setMaximum(1.0) - self.doubleSpinBox_deseq2_pvalue.setSingleStep(0.01) - self.doubleSpinBox_deseq2_pvalue.setProperty("value", 0.05) - self.doubleSpinBox_deseq2_pvalue.setObjectName("doubleSpinBox_deseq2_pvalue") - self.horizontalLayout_48.addWidget(self.doubleSpinBox_deseq2_pvalue) - self.gridLayout_16.addLayout(self.horizontalLayout_48, 12, 0, 1, 1) - self.pushButton_deseq2_plot_vocano = QtWidgets.QPushButton(self.tab_6) - self.pushButton_deseq2_plot_vocano.setEnabled(False) + sizePolicy.setHeightForWidth(self.label_109.sizePolicy().hasHeightForWidth()) + self.label_109.setSizePolicy(sizePolicy) + self.label_109.setObjectName("label_109") + self.horizontalLayout_19.addWidget(self.label_109) + self.spinBox_top_heatmap_label_font_size = QtWidgets.QSpinBox(self.page_21) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_deseq2_plot_vocano.sizePolicy().hasHeightForWidth()) - self.pushButton_deseq2_plot_vocano.setSizePolicy(sizePolicy) - self.pushButton_deseq2_plot_vocano.setObjectName("pushButton_deseq2_plot_vocano") - self.gridLayout_16.addWidget(self.pushButton_deseq2_plot_vocano, 13, 0, 1, 1) - self.horizontalLayout_61 = QtWidgets.QHBoxLayout() - self.horizontalLayout_61.setObjectName("horizontalLayout_61") - self.label_71 = QtWidgets.QLabel(self.tab_6) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Preferred) + sizePolicy.setHeightForWidth(self.spinBox_top_heatmap_label_font_size.sizePolicy().hasHeightForWidth()) + self.spinBox_top_heatmap_label_font_size.setSizePolicy(sizePolicy) + self.spinBox_top_heatmap_label_font_size.setMinimum(1) + self.spinBox_top_heatmap_label_font_size.setMaximum(999) + self.spinBox_top_heatmap_label_font_size.setSingleStep(1) + self.spinBox_top_heatmap_label_font_size.setProperty("value", 10) + self.spinBox_top_heatmap_label_font_size.setObjectName("spinBox_top_heatmap_label_font_size") + self.horizontalLayout_19.addWidget(self.spinBox_top_heatmap_label_font_size) + self.gridLayout_top_heatmap_plot.addLayout(self.horizontalLayout_19, 0, 2, 1, 1) + self.horizontalLayout_23 = QtWidgets.QHBoxLayout() + self.horizontalLayout_23.setObjectName("horizontalLayout_23") + self.checkBox_cross_heatmap_col_cluster = QtWidgets.QCheckBox(self.page_21) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.label_71.sizePolicy().hasHeightForWidth()) - self.label_71.setSizePolicy(sizePolicy) - self.label_71.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter) - self.label_71.setObjectName("label_71") - self.horizontalLayout_61.addWidget(self.label_71) - self.doubleSpinBox_deseq2_log2fc_min = QtWidgets.QDoubleSpinBox(self.tab_6) + sizePolicy.setHeightForWidth(self.checkBox_cross_heatmap_col_cluster.sizePolicy().hasHeightForWidth()) + self.checkBox_cross_heatmap_col_cluster.setSizePolicy(sizePolicy) + self.checkBox_cross_heatmap_col_cluster.setChecked(True) + self.checkBox_cross_heatmap_col_cluster.setObjectName("checkBox_cross_heatmap_col_cluster") + self.horizontalLayout_23.addWidget(self.checkBox_cross_heatmap_col_cluster) + self.checkBox_cross_heatmap_row_cluster = QtWidgets.QCheckBox(self.page_21) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.doubleSpinBox_deseq2_log2fc_min.sizePolicy().hasHeightForWidth()) - self.doubleSpinBox_deseq2_log2fc_min.setSizePolicy(sizePolicy) - self.doubleSpinBox_deseq2_log2fc_min.setDecimals(1) - self.doubleSpinBox_deseq2_log2fc_min.setProperty("value", 1.0) - self.doubleSpinBox_deseq2_log2fc_min.setObjectName("doubleSpinBox_deseq2_log2fc_min") - self.horizontalLayout_61.addWidget(self.doubleSpinBox_deseq2_log2fc_min) - self.label_63 = QtWidgets.QLabel(self.tab_6) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Preferred) + sizePolicy.setHeightForWidth(self.checkBox_cross_heatmap_row_cluster.sizePolicy().hasHeightForWidth()) + self.checkBox_cross_heatmap_row_cluster.setSizePolicy(sizePolicy) + self.checkBox_cross_heatmap_row_cluster.setChecked(True) + self.checkBox_cross_heatmap_row_cluster.setObjectName("checkBox_cross_heatmap_row_cluster") + self.horizontalLayout_23.addWidget(self.checkBox_cross_heatmap_row_cluster) + self.gridLayout_top_heatmap_plot.addLayout(self.horizontalLayout_23, 0, 3, 1, 1) + self.horizontalLayout_15 = QtWidgets.QHBoxLayout() + self.horizontalLayout_15.setObjectName("horizontalLayout_15") + self.label_131 = QtWidgets.QLabel(self.page_21) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.label_63.sizePolicy().hasHeightForWidth()) - self.label_63.setSizePolicy(sizePolicy) - self.label_63.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter) - self.label_63.setObjectName("label_63") - self.horizontalLayout_61.addWidget(self.label_63) - self.doubleSpinBox_deseq2_log2fc_max = QtWidgets.QDoubleSpinBox(self.tab_6) + sizePolicy.setHeightForWidth(self.label_131.sizePolicy().hasHeightForWidth()) + self.label_131.setSizePolicy(sizePolicy) + self.label_131.setObjectName("label_131") + self.horizontalLayout_15.addWidget(self.label_131) + self.checkBox_top_heatmap_show_all_labels_x = QtWidgets.QCheckBox(self.page_21) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.doubleSpinBox_deseq2_log2fc_max.sizePolicy().hasHeightForWidth()) - self.doubleSpinBox_deseq2_log2fc_max.setSizePolicy(sizePolicy) - self.doubleSpinBox_deseq2_log2fc_max.setDecimals(1) - self.doubleSpinBox_deseq2_log2fc_max.setProperty("value", 10.0) - self.doubleSpinBox_deseq2_log2fc_max.setObjectName("doubleSpinBox_deseq2_log2fc_max") - self.horizontalLayout_61.addWidget(self.doubleSpinBox_deseq2_log2fc_max) - self.gridLayout_16.addLayout(self.horizontalLayout_61, 11, 1, 1, 1) - self.horizontalLayout_62 = QtWidgets.QHBoxLayout() - self.horizontalLayout_62.setObjectName("horizontalLayout_62") - self.label_16 = QtWidgets.QLabel(self.tab_6) + sizePolicy.setHeightForWidth(self.checkBox_top_heatmap_show_all_labels_x.sizePolicy().hasHeightForWidth()) + self.checkBox_top_heatmap_show_all_labels_x.setSizePolicy(sizePolicy) + self.checkBox_top_heatmap_show_all_labels_x.setLayoutDirection(QtCore.Qt.LeftToRight) + self.checkBox_top_heatmap_show_all_labels_x.setObjectName("checkBox_top_heatmap_show_all_labels_x") + self.horizontalLayout_15.addWidget(self.checkBox_top_heatmap_show_all_labels_x) + self.checkBox_top_heatmap_show_all_labels_y = QtWidgets.QCheckBox(self.page_21) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.label_16.sizePolicy().hasHeightForWidth()) - self.label_16.setSizePolicy(sizePolicy) - self.label_16.setLayoutDirection(QtCore.Qt.LeftToRight) - self.label_16.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter) - self.label_16.setObjectName("label_16") - self.horizontalLayout_62.addWidget(self.label_16) - self.spinBox_fc_plot_width = QtWidgets.QSpinBox(self.tab_6) - self.spinBox_fc_plot_width.setMinimum(1) - self.spinBox_fc_plot_width.setMaximum(99) - self.spinBox_fc_plot_width.setSingleStep(1) - self.spinBox_fc_plot_width.setProperty("value", 10) - self.spinBox_fc_plot_width.setObjectName("spinBox_fc_plot_width") - self.horizontalLayout_62.addWidget(self.spinBox_fc_plot_width) - self.label_17 = QtWidgets.QLabel(self.tab_6) + sizePolicy.setHeightForWidth(self.checkBox_top_heatmap_show_all_labels_y.sizePolicy().hasHeightForWidth()) + self.checkBox_top_heatmap_show_all_labels_y.setSizePolicy(sizePolicy) + self.checkBox_top_heatmap_show_all_labels_y.setLayoutDirection(QtCore.Qt.LeftToRight) + self.checkBox_top_heatmap_show_all_labels_y.setObjectName("checkBox_top_heatmap_show_all_labels_y") + self.horizontalLayout_15.addWidget(self.checkBox_top_heatmap_show_all_labels_y) + self.gridLayout_top_heatmap_plot.addLayout(self.horizontalLayout_15, 1, 3, 1, 1) + self.horizontalLayout_16 = QtWidgets.QHBoxLayout() + self.horizontalLayout_16.setObjectName("horizontalLayout_16") + self.label_30 = QtWidgets.QLabel(self.page_21) + self.label_30.setObjectName("label_30") + self.horizontalLayout_16.addWidget(self.label_30) + self.doubleSpinBox_top_heatmap_pvalue = QtWidgets.QDoubleSpinBox(self.page_21) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.label_17.sizePolicy().hasHeightForWidth()) - self.label_17.setSizePolicy(sizePolicy) - self.label_17.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter) - self.label_17.setObjectName("label_17") - self.horizontalLayout_62.addWidget(self.label_17) - self.spinBox_fc_plot_height = QtWidgets.QSpinBox(self.tab_6) + sizePolicy.setHeightForWidth(self.doubleSpinBox_top_heatmap_pvalue.sizePolicy().hasHeightForWidth()) + self.doubleSpinBox_top_heatmap_pvalue.setSizePolicy(sizePolicy) + self.doubleSpinBox_top_heatmap_pvalue.setDecimals(4) + self.doubleSpinBox_top_heatmap_pvalue.setMaximum(1.0) + self.doubleSpinBox_top_heatmap_pvalue.setSingleStep(0.01) + self.doubleSpinBox_top_heatmap_pvalue.setProperty("value", 0.05) + self.doubleSpinBox_top_heatmap_pvalue.setObjectName("doubleSpinBox_top_heatmap_pvalue") + self.horizontalLayout_16.addWidget(self.doubleSpinBox_top_heatmap_pvalue) + self.gridLayout_top_heatmap_plot.addLayout(self.horizontalLayout_16, 3, 3, 1, 1) + self.horizontalLayout_17 = QtWidgets.QHBoxLayout() + self.horizontalLayout_17.setObjectName("horizontalLayout_17") + self.label_153 = QtWidgets.QLabel(self.page_21) + self.label_153.setObjectName("label_153") + self.horizontalLayout_17.addWidget(self.label_153) + self.checkBox_top_heatmap_rename_taxa = QtWidgets.QCheckBox(self.page_21) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.spinBox_fc_plot_height.sizePolicy().hasHeightForWidth()) - self.spinBox_fc_plot_height.setSizePolicy(sizePolicy) - self.spinBox_fc_plot_height.setMinimum(1) - self.spinBox_fc_plot_height.setMaximum(99) - self.spinBox_fc_plot_height.setSingleStep(1) - self.spinBox_fc_plot_height.setProperty("value", 8) - self.spinBox_fc_plot_height.setObjectName("spinBox_fc_plot_height") - self.horizontalLayout_62.addWidget(self.spinBox_fc_plot_height) - self.gridLayout_16.addLayout(self.horizontalLayout_62, 12, 1, 1, 1) - self.pushButton_deseq2_plot_sankey = QtWidgets.QPushButton(self.tab_6) - self.pushButton_deseq2_plot_sankey.setEnabled(False) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Minimum) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_deseq2_plot_sankey.sizePolicy().hasHeightForWidth()) - self.pushButton_deseq2_plot_sankey.setSizePolicy(sizePolicy) - self.pushButton_deseq2_plot_sankey.setObjectName("pushButton_deseq2_plot_sankey") - self.gridLayout_16.addWidget(self.pushButton_deseq2_plot_sankey, 13, 1, 1, 1) - self.horizontalLayout_22 = QtWidgets.QHBoxLayout() - self.horizontalLayout_22.setObjectName("horizontalLayout_22") - self.label_2 = QtWidgets.QLabel(self.tab_6) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHeightForWidth(self.checkBox_top_heatmap_rename_taxa.sizePolicy().hasHeightForWidth()) + self.checkBox_top_heatmap_rename_taxa.setSizePolicy(sizePolicy) + self.checkBox_top_heatmap_rename_taxa.setLayoutDirection(QtCore.Qt.LeftToRight) + self.checkBox_top_heatmap_rename_taxa.setChecked(True) + self.checkBox_top_heatmap_rename_taxa.setObjectName("checkBox_top_heatmap_rename_taxa") + self.horizontalLayout_17.addWidget(self.checkBox_top_heatmap_rename_taxa) + self.checkBox_top_heatmap_rename_sample = QtWidgets.QCheckBox(self.page_21) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.label_2.sizePolicy().hasHeightForWidth()) - self.label_2.setSizePolicy(sizePolicy) - self.label_2.setObjectName("label_2") - self.horizontalLayout_22.addWidget(self.label_2) - self.comboBox_deseq2_group1 = QtWidgets.QComboBox(self.tab_6) - self.comboBox_deseq2_group1.setObjectName("comboBox_deseq2_group1") - self.horizontalLayout_22.addWidget(self.comboBox_deseq2_group1) - self.label_3 = QtWidgets.QLabel(self.tab_6) + sizePolicy.setHeightForWidth(self.checkBox_top_heatmap_rename_sample.sizePolicy().hasHeightForWidth()) + self.checkBox_top_heatmap_rename_sample.setSizePolicy(sizePolicy) + self.checkBox_top_heatmap_rename_sample.setLayoutDirection(QtCore.Qt.LeftToRight) + self.checkBox_top_heatmap_rename_sample.setChecked(True) + self.checkBox_top_heatmap_rename_sample.setObjectName("checkBox_top_heatmap_rename_sample") + self.horizontalLayout_17.addWidget(self.checkBox_top_heatmap_rename_sample) + self.gridLayout_top_heatmap_plot.addLayout(self.horizontalLayout_17, 0, 4, 1, 1) + self.gridLayout_38 = QtWidgets.QGridLayout() + self.gridLayout_38.setObjectName("gridLayout_38") + self.horizontalLayout_86 = QtWidgets.QHBoxLayout() + self.horizontalLayout_86.setSizeConstraint(QtWidgets.QLayout.SetDefaultConstraint) + self.horizontalLayout_86.setSpacing(2) + self.horizontalLayout_86.setObjectName("horizontalLayout_86") + self.label_141 = QtWidgets.QLabel(self.page_21) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.label_3.sizePolicy().hasHeightForWidth()) - self.label_3.setSizePolicy(sizePolicy) - self.label_3.setObjectName("label_3") - self.horizontalLayout_22.addWidget(self.label_3) - self.comboBox_deseq2_group2 = QtWidgets.QComboBox(self.tab_6) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHeightForWidth(self.label_141.sizePolicy().hasHeightForWidth()) + self.label_141.setSizePolicy(sizePolicy) + self.label_141.setObjectName("label_141") + self.horizontalLayout_86.addWidget(self.label_141) + self.comboBox_cross_3_level_plot_df_type = QtWidgets.QComboBox(self.page_21) + self.comboBox_cross_3_level_plot_df_type.setObjectName("comboBox_cross_3_level_plot_df_type") + self.comboBox_cross_3_level_plot_df_type.addItem("") + self.comboBox_cross_3_level_plot_df_type.addItem("") + self.comboBox_cross_3_level_plot_df_type.addItem("") + self.horizontalLayout_86.addWidget(self.comboBox_cross_3_level_plot_df_type) + self.gridLayout_38.addLayout(self.horizontalLayout_86, 0, 2, 1, 1) + self.horizontalLayout_84 = QtWidgets.QHBoxLayout() + self.horizontalLayout_84.setSpacing(4) + self.horizontalLayout_84.setObjectName("horizontalLayout_84") + self.label_181 = QtWidgets.QLabel(self.page_21) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.comboBox_deseq2_group2.sizePolicy().hasHeightForWidth()) - self.comboBox_deseq2_group2.setSizePolicy(sizePolicy) - self.comboBox_deseq2_group2.setObjectName("comboBox_deseq2_group2") - self.horizontalLayout_22.addWidget(self.comboBox_deseq2_group2) - self.gridLayout_16.addLayout(self.horizontalLayout_22, 1, 0, 1, 2) - self.pushButton_deseq2 = QtWidgets.QPushButton(self.tab_6) - self.pushButton_deseq2.setEnabled(False) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHeightForWidth(self.label_181.sizePolicy().hasHeightForWidth()) + self.label_181.setSizePolicy(sizePolicy) + self.label_181.setMinimumSize(QtCore.QSize(150, 0)) + self.label_181.setMaximumSize(QtCore.QSize(150, 16777215)) + font = QtGui.QFont() + font.setBold(True) + font.setWeight(75) + self.label_181.setFont(font) + self.label_181.setObjectName("label_181") + self.horizontalLayout_84.addWidget(self.label_181) + self.label_138 = QtWidgets.QLabel(self.page_21) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_deseq2.sizePolicy().hasHeightForWidth()) - self.pushButton_deseq2.setSizePolicy(sizePolicy) - self.pushButton_deseq2.setMinimumSize(QtCore.QSize(33, 0)) - self.pushButton_deseq2.setMaximumSize(QtCore.QSize(16777215, 16777215)) - self.pushButton_deseq2.setObjectName("pushButton_deseq2") - self.gridLayout_16.addWidget(self.pushButton_deseq2, 4, 0, 1, 2) - self.line = QtWidgets.QFrame(self.tab_6) - self.line.setFrameShape(QtWidgets.QFrame.HLine) - self.line.setFrameShadow(QtWidgets.QFrame.Sunken) - self.line.setObjectName("line") - self.gridLayout_16.addWidget(self.line, 7, 0, 1, 2) - self.horizontalLayout_40 = QtWidgets.QHBoxLayout() - self.horizontalLayout_40.setObjectName("horizontalLayout_40") - self.label_4 = QtWidgets.QLabel(self.tab_6) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHeightForWidth(self.label_138.sizePolicy().hasHeightForWidth()) + self.label_138.setSizePolicy(sizePolicy) + self.label_138.setMinimumSize(QtCore.QSize(70, 0)) + self.label_138.setMaximumSize(QtCore.QSize(50, 16777215)) + self.label_138.setObjectName("label_138") + self.horizontalLayout_84.addWidget(self.label_138) + self.doubleSpinBox_mini_log2fc_heatmap = QtWidgets.QDoubleSpinBox(self.page_21) + self.doubleSpinBox_mini_log2fc_heatmap.setEnabled(True) + self.doubleSpinBox_mini_log2fc_heatmap.setProperty("showGroupSeparator", False) + self.doubleSpinBox_mini_log2fc_heatmap.setDecimals(3) + self.doubleSpinBox_mini_log2fc_heatmap.setMinimum(0.0) + self.doubleSpinBox_mini_log2fc_heatmap.setProperty("value", 1.0) + self.doubleSpinBox_mini_log2fc_heatmap.setObjectName("doubleSpinBox_mini_log2fc_heatmap") + self.horizontalLayout_84.addWidget(self.doubleSpinBox_mini_log2fc_heatmap) + self.label_139 = QtWidgets.QLabel(self.page_21) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.label_4.sizePolicy().hasHeightForWidth()) - self.label_4.setSizePolicy(sizePolicy) - self.label_4.setObjectName("label_4") - self.horizontalLayout_40.addWidget(self.label_4) - self.comboBox_table_for_deseq2 = QtWidgets.QComboBox(self.tab_6) + sizePolicy.setHeightForWidth(self.label_139.sizePolicy().hasHeightForWidth()) + self.label_139.setSizePolicy(sizePolicy) + self.label_139.setObjectName("label_139") + self.horizontalLayout_84.addWidget(self.label_139) + self.doubleSpinBox_max_log2fc_heatmap = QtWidgets.QDoubleSpinBox(self.page_21) + self.doubleSpinBox_max_log2fc_heatmap.setEnabled(True) + self.doubleSpinBox_max_log2fc_heatmap.setDecimals(3) + self.doubleSpinBox_max_log2fc_heatmap.setProperty("value", 30.0) + self.doubleSpinBox_max_log2fc_heatmap.setObjectName("doubleSpinBox_max_log2fc_heatmap") + self.horizontalLayout_84.addWidget(self.doubleSpinBox_max_log2fc_heatmap) + self.gridLayout_38.addLayout(self.horizontalLayout_84, 0, 1, 1, 1) + self.checkBox_cross_3_level_plot_remove_zero_col = QtWidgets.QCheckBox(self.page_21) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.comboBox_table_for_deseq2.sizePolicy().hasHeightForWidth()) - self.comboBox_table_for_deseq2.setSizePolicy(sizePolicy) - self.comboBox_table_for_deseq2.setObjectName("comboBox_table_for_deseq2") - self.comboBox_table_for_deseq2.addItem("") - self.comboBox_table_for_deseq2.addItem("") - self.comboBox_table_for_deseq2.addItem("") - self.comboBox_table_for_deseq2.addItem("") - self.horizontalLayout_40.addWidget(self.comboBox_table_for_deseq2) - self.label_147 = QtWidgets.QLabel(self.tab_6) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Preferred) + sizePolicy.setHeightForWidth(self.checkBox_cross_3_level_plot_remove_zero_col.sizePolicy().hasHeightForWidth()) + self.checkBox_cross_3_level_plot_remove_zero_col.setSizePolicy(sizePolicy) + self.checkBox_cross_3_level_plot_remove_zero_col.setChecked(True) + self.checkBox_cross_3_level_plot_remove_zero_col.setObjectName("checkBox_cross_3_level_plot_remove_zero_col") + self.gridLayout_38.addWidget(self.checkBox_cross_3_level_plot_remove_zero_col, 0, 3, 1, 1) + self.gridLayout_top_heatmap_plot.addLayout(self.gridLayout_38, 4, 0, 1, 5) + self.line_5 = QtWidgets.QFrame(self.page_21) + self.line_5.setFrameShape(QtWidgets.QFrame.HLine) + self.line_5.setFrameShadow(QtWidgets.QFrame.Sunken) + self.line_5.setObjectName("line_5") + self.gridLayout_top_heatmap_plot.addWidget(self.line_5, 2, 1, 1, 5) + self.horizontalLayout_12 = QtWidgets.QHBoxLayout() + self.horizontalLayout_12.setObjectName("horizontalLayout_12") + self.label_62 = QtWidgets.QLabel(self.page_21) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.label_147.sizePolicy().hasHeightForWidth()) - self.label_147.setSizePolicy(sizePolicy) - self.label_147.setObjectName("label_147") - self.horizontalLayout_40.addWidget(self.label_147) - self.comboBox_deseq2_meta = QtWidgets.QComboBox(self.tab_6) + sizePolicy.setHeightForWidth(self.label_62.sizePolicy().hasHeightForWidth()) + self.label_62.setSizePolicy(sizePolicy) + self.label_62.setMinimumSize(QtCore.QSize(70, 0)) + self.label_62.setObjectName("label_62") + self.horizontalLayout_12.addWidget(self.label_62) + self.comboBox_top_heatmap_scale = QtWidgets.QComboBox(self.page_21) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.comboBox_deseq2_meta.sizePolicy().hasHeightForWidth()) - self.comboBox_deseq2_meta.setSizePolicy(sizePolicy) - self.comboBox_deseq2_meta.setObjectName("comboBox_deseq2_meta") - self.horizontalLayout_40.addWidget(self.comboBox_deseq2_meta) - self.checkBox_deseq2_comparing_in_condition = QtWidgets.QCheckBox(self.tab_6) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.checkBox_deseq2_comparing_in_condition.sizePolicy().hasHeightForWidth()) - self.checkBox_deseq2_comparing_in_condition.setSizePolicy(sizePolicy) - self.checkBox_deseq2_comparing_in_condition.setLayoutDirection(QtCore.Qt.RightToLeft) - self.checkBox_deseq2_comparing_in_condition.setObjectName("checkBox_deseq2_comparing_in_condition") - self.horizontalLayout_40.addWidget(self.checkBox_deseq2_comparing_in_condition) - self.comboBox_deseq2_condition_meta = QtWidgets.QComboBox(self.tab_6) - self.comboBox_deseq2_condition_meta.setEnabled(False) - self.comboBox_deseq2_condition_meta.setObjectName("comboBox_deseq2_condition_meta") - self.horizontalLayout_40.addWidget(self.comboBox_deseq2_condition_meta) - self.horizontalLayout_75 = QtWidgets.QHBoxLayout() - self.horizontalLayout_75.setObjectName("horizontalLayout_75") - self.comboBox_deseq2_condition_group = QtWidgets.QComboBox(self.tab_6) - self.comboBox_deseq2_condition_group.setEnabled(False) - self.comboBox_deseq2_condition_group.setObjectName("comboBox_deseq2_condition_group") - self.horizontalLayout_75.addWidget(self.comboBox_deseq2_condition_group) - self.horizontalLayout_40.addLayout(self.horizontalLayout_75) - self.gridLayout_16.addLayout(self.horizontalLayout_40, 0, 0, 1, 2) - self.tabWidget.addTab(self.tab_6, "") + sizePolicy.setHeightForWidth(self.comboBox_top_heatmap_scale.sizePolicy().hasHeightForWidth()) + self.comboBox_top_heatmap_scale.setSizePolicy(sizePolicy) + self.comboBox_top_heatmap_scale.setObjectName("comboBox_top_heatmap_scale") + self.comboBox_top_heatmap_scale.addItem("") + self.comboBox_top_heatmap_scale.addItem("") + self.comboBox_top_heatmap_scale.addItem("") + self.horizontalLayout_12.addWidget(self.comboBox_top_heatmap_scale) + self.label_38 = QtWidgets.QLabel(self.page_21) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Preferred) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.label_38.sizePolicy().hasHeightForWidth()) + self.label_38.setSizePolicy(sizePolicy) + self.label_38.setObjectName("label_38") + self.horizontalLayout_12.addWidget(self.label_38) + self.comboBox_top_heatmap_cmap = QtWidgets.QComboBox(self.page_21) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.comboBox_top_heatmap_cmap.sizePolicy().hasHeightForWidth()) + self.comboBox_top_heatmap_cmap.setSizePolicy(sizePolicy) + self.comboBox_top_heatmap_cmap.setObjectName("comboBox_top_heatmap_cmap") + self.horizontalLayout_12.addWidget(self.comboBox_top_heatmap_cmap) + self.gridLayout_top_heatmap_plot.addLayout(self.horizontalLayout_12, 1, 1, 1, 2) + self.gridLayout_68.addLayout(self.gridLayout_top_heatmap_plot, 0, 0, 1, 1) + self.toolBox_9.addItem(self.page_21, "") + self.gridLayout_9.addWidget(self.toolBox_9, 1, 0, 1, 1) + self.tabWidget_TaxaFuncAnalyzer.addTab(self.tab_2, "") + self.tab_diff_stats = QtWidgets.QWidget() + self.tab_diff_stats.setObjectName("tab_diff_stats") + self.gridLayout_12 = QtWidgets.QGridLayout(self.tab_diff_stats) + self.gridLayout_12.setObjectName("gridLayout_12") + self.tabWidget = QtWidgets.QTabWidget(self.tab_diff_stats) + self.tabWidget.setTabShape(QtWidgets.QTabWidget.Triangular) + self.tabWidget.setObjectName("tabWidget") self.tab_5 = QtWidgets.QWidget() self.tab_5.setObjectName("tab_5") self.gridLayout_47 = QtWidgets.QGridLayout(self.tab_5) self.gridLayout_47.setObjectName("gridLayout_47") - self.label_72 = QtWidgets.QLabel(self.tab_5) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) + self.verticalLayout_2 = QtWidgets.QVBoxLayout() + self.verticalLayout_2.setObjectName("verticalLayout_2") + self.pushButton_co_expr_drop_item = QtWidgets.QPushButton(self.tab_5) + self.pushButton_co_expr_drop_item.setEnabled(False) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.label_72.sizePolicy().hasHeightForWidth()) - self.label_72.setSizePolicy(sizePolicy) - self.label_72.setObjectName("label_72") - self.gridLayout_47.addWidget(self.label_72, 3, 0, 1, 1) - self.listWidget_co_expr_focus_list = QtWidgets.QListWidget(self.tab_5) - self.listWidget_co_expr_focus_list.setObjectName("listWidget_co_expr_focus_list") - self.gridLayout_47.addWidget(self.listWidget_co_expr_focus_list, 5, 1, 1, 3) + sizePolicy.setHeightForWidth(self.pushButton_co_expr_drop_item.sizePolicy().hasHeightForWidth()) + self.pushButton_co_expr_drop_item.setSizePolicy(sizePolicy) + self.pushButton_co_expr_drop_item.setObjectName("pushButton_co_expr_drop_item") + self.verticalLayout_2.addWidget(self.pushButton_co_expr_drop_item) + self.pushButton_co_expr_clean_list = QtWidgets.QPushButton(self.tab_5) + self.pushButton_co_expr_clean_list.setEnabled(False) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Preferred) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.pushButton_co_expr_clean_list.sizePolicy().hasHeightForWidth()) + self.pushButton_co_expr_clean_list.setSizePolicy(sizePolicy) + self.pushButton_co_expr_clean_list.setObjectName("pushButton_co_expr_clean_list") + self.verticalLayout_2.addWidget(self.pushButton_co_expr_clean_list) + self.pushButton_co_expr_add_a_list = QtWidgets.QPushButton(self.tab_5) + self.pushButton_co_expr_add_a_list.setEnabled(False) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Preferred) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.pushButton_co_expr_add_a_list.sizePolicy().hasHeightForWidth()) + self.pushButton_co_expr_add_a_list.setSizePolicy(sizePolicy) + self.pushButton_co_expr_add_a_list.setObjectName("pushButton_co_expr_add_a_list") + self.verticalLayout_2.addWidget(self.pushButton_co_expr_add_a_list) + self.gridLayout_47.addLayout(self.verticalLayout_2, 7, 0, 1, 1) + self.pushButton_co_expr_add_top = QtWidgets.QPushButton(self.tab_5) + self.pushButton_co_expr_add_top.setEnabled(False) + self.pushButton_co_expr_add_top.setObjectName("pushButton_co_expr_add_top") + self.gridLayout_47.addWidget(self.pushButton_co_expr_add_top, 6, 3, 1, 1) + self.gridLayout_co_expr_group = QtWidgets.QGridLayout() + self.gridLayout_co_expr_group.setObjectName("gridLayout_co_expr_group") + self.gridLayout_47.addLayout(self.gridLayout_co_expr_group, 2, 2, 1, 2) + self.comboBox_co_expr_select_list = QtWidgets.QComboBox(self.tab_5) + self.comboBox_co_expr_select_list.setMinimumSize(QtCore.QSize(600, 0)) + self.comboBox_co_expr_select_list.setObjectName("comboBox_co_expr_select_list") + self.gridLayout_47.addWidget(self.comboBox_co_expr_select_list, 5, 1, 1, 2) self.radioButton_co_expr_bysample = QtWidgets.QRadioButton(self.tab_5) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) @@ -2539,7 +3035,7 @@ def setupUi(self, metaX_main): sizePolicy.setHeightForWidth(self.radioButton_co_expr_bysample.sizePolicy().hasHeightForWidth()) self.radioButton_co_expr_bysample.setSizePolicy(sizePolicy) self.radioButton_co_expr_bysample.setObjectName("radioButton_co_expr_bysample") - self.gridLayout_47.addWidget(self.radioButton_co_expr_bysample, 2, 0, 1, 1) + self.gridLayout_47.addWidget(self.radioButton_co_expr_bysample, 3, 0, 1, 1) self.horizontalLayout_42 = QtWidgets.QHBoxLayout() self.horizontalLayout_42.setObjectName("horizontalLayout_42") self.checkBox_co_expression_in_condition = QtWidgets.QCheckBox(self.tab_5) @@ -2553,15 +3049,87 @@ def setupUi(self, metaX_main): self.horizontalLayout_74.setObjectName("horizontalLayout_74") self.comboBox_co_expression_condition_group = QtWidgets.QComboBox(self.tab_5) self.comboBox_co_expression_condition_group.setEnabled(False) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.MinimumExpanding, QtWidgets.QSizePolicy.Fixed) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.comboBox_co_expression_condition_group.sizePolicy().hasHeightForWidth()) self.comboBox_co_expression_condition_group.setSizePolicy(sizePolicy) + self.comboBox_co_expression_condition_group.setMinimumSize(QtCore.QSize(150, 0)) + self.comboBox_co_expression_condition_group.setMaximumSize(QtCore.QSize(500, 16777215)) self.comboBox_co_expression_condition_group.setObjectName("comboBox_co_expression_condition_group") self.horizontalLayout_74.addWidget(self.comboBox_co_expression_condition_group) self.horizontalLayout_42.addLayout(self.horizontalLayout_74) - self.gridLayout_47.addLayout(self.horizontalLayout_42, 1, 1, 1, 1) + self.gridLayout_47.addLayout(self.horizontalLayout_42, 2, 1, 1, 1) + self.horizontalLayout_43 = QtWidgets.QHBoxLayout() + self.horizontalLayout_43.setObjectName("horizontalLayout_43") + self.label_73 = QtWidgets.QLabel(self.tab_5) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.label_73.sizePolicy().hasHeightForWidth()) + self.label_73.setSizePolicy(sizePolicy) + self.label_73.setObjectName("label_73") + self.horizontalLayout_43.addWidget(self.label_73) + self.spinBox_co_expr_top_num = QtWidgets.QSpinBox(self.tab_5) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.spinBox_co_expr_top_num.sizePolicy().hasHeightForWidth()) + self.spinBox_co_expr_top_num.setSizePolicy(sizePolicy) + self.spinBox_co_expr_top_num.setMinimum(1) + self.spinBox_co_expr_top_num.setMaximum(99999) + self.spinBox_co_expr_top_num.setProperty("value", 10) + self.spinBox_co_expr_top_num.setObjectName("spinBox_co_expr_top_num") + self.horizontalLayout_43.addWidget(self.spinBox_co_expr_top_num) + self.label_74 = QtWidgets.QLabel(self.tab_5) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Preferred) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.label_74.sizePolicy().hasHeightForWidth()) + self.label_74.setSizePolicy(sizePolicy) + self.label_74.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter) + self.label_74.setObjectName("label_74") + self.horizontalLayout_43.addWidget(self.label_74) + self.comboBox_co_expr_top_by = QtWidgets.QComboBox(self.tab_5) + self.comboBox_co_expr_top_by.setObjectName("comboBox_co_expr_top_by") + self.comboBox_co_expr_top_by.addItem("") + self.comboBox_co_expr_top_by.addItem("") + self.comboBox_co_expr_top_by.addItem("") + self.comboBox_co_expr_top_by.addItem("") + self.comboBox_co_expr_top_by.addItem("") + self.comboBox_co_expr_top_by.addItem("") + self.comboBox_co_expr_top_by.addItem("") + self.comboBox_co_expr_top_by.addItem("") + self.comboBox_co_expr_top_by.addItem("") + self.comboBox_co_expr_top_by.addItem("") + self.comboBox_co_expr_top_by.addItem("") + self.horizontalLayout_43.addWidget(self.comboBox_co_expr_top_by) + self.checkBox_co_expr_top_filtered = QtWidgets.QCheckBox(self.tab_5) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.checkBox_co_expr_top_filtered.sizePolicy().hasHeightForWidth()) + self.checkBox_co_expr_top_filtered.setSizePolicy(sizePolicy) + self.checkBox_co_expr_top_filtered.setObjectName("checkBox_co_expr_top_filtered") + self.horizontalLayout_43.addWidget(self.checkBox_co_expr_top_filtered) + self.gridLayout_47.addLayout(self.horizontalLayout_43, 6, 1, 1, 2) + self.gridLayout_co_expr_sample = QtWidgets.QGridLayout() + self.gridLayout_co_expr_sample.setObjectName("gridLayout_co_expr_sample") + self.gridLayout_47.addLayout(self.gridLayout_co_expr_sample, 3, 1, 1, 3) + self.line_11 = QtWidgets.QFrame(self.tab_5) + self.line_11.setFrameShape(QtWidgets.QFrame.HLine) + self.line_11.setFrameShadow(QtWidgets.QFrame.Sunken) + self.line_11.setObjectName("line_11") + self.gridLayout_47.addWidget(self.line_11, 1, 0, 1, 4) + self.radioButton_co_expr_bygroup = QtWidgets.QRadioButton(self.tab_5) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.radioButton_co_expr_bygroup.sizePolicy().hasHeightForWidth()) + self.radioButton_co_expr_bygroup.setSizePolicy(sizePolicy) + self.radioButton_co_expr_bygroup.setChecked(True) + self.radioButton_co_expr_bygroup.setObjectName("radioButton_co_expr_bygroup") + self.gridLayout_47.addWidget(self.radioButton_co_expr_bygroup, 2, 0, 1, 1) self.horizontalLayout_41 = QtWidgets.QHBoxLayout() self.horizontalLayout_41.setObjectName("horizontalLayout_41") self.label_29 = QtWidgets.QLabel(self.tab_5) @@ -2604,54 +3172,71 @@ def setupUi(self, metaX_main): self.comboBox_co_expr_meta.setObjectName("comboBox_co_expr_meta") self.horizontalLayout_41.addWidget(self.comboBox_co_expr_meta) self.gridLayout_47.addLayout(self.horizontalLayout_41, 0, 0, 1, 4) - self.label_65 = QtWidgets.QLabel(self.tab_5) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.label_65.sizePolicy().hasHeightForWidth()) - self.label_65.setSizePolicy(sizePolicy) - self.label_65.setObjectName("label_65") - self.gridLayout_47.addWidget(self.label_65, 0, 8, 1, 1) - self.verticalLayout_2 = QtWidgets.QVBoxLayout() - self.verticalLayout_2.setObjectName("verticalLayout_2") - self.pushButton_co_expr_drop_item = QtWidgets.QPushButton(self.tab_5) - self.pushButton_co_expr_drop_item.setEnabled(False) + self.label_72 = QtWidgets.QLabel(self.tab_5) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_co_expr_drop_item.sizePolicy().hasHeightForWidth()) - self.pushButton_co_expr_drop_item.setSizePolicy(sizePolicy) - self.pushButton_co_expr_drop_item.setObjectName("pushButton_co_expr_drop_item") - self.verticalLayout_2.addWidget(self.pushButton_co_expr_drop_item) - self.pushButton_co_expr_clean_list = QtWidgets.QPushButton(self.tab_5) - self.pushButton_co_expr_clean_list.setEnabled(False) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHeightForWidth(self.label_72.sizePolicy().hasHeightForWidth()) + self.label_72.setSizePolicy(sizePolicy) + self.label_72.setObjectName("label_72") + self.gridLayout_47.addWidget(self.label_72, 5, 0, 1, 1) + self.pushButton_co_expr_add_to_list = QtWidgets.QPushButton(self.tab_5) + self.pushButton_co_expr_add_to_list.setEnabled(False) + self.pushButton_co_expr_add_to_list.setObjectName("pushButton_co_expr_add_to_list") + self.gridLayout_47.addWidget(self.pushButton_co_expr_add_to_list, 5, 3, 1, 1) + self.toolBox_5 = QtWidgets.QToolBox(self.tab_5) + self.toolBox_5.setMinimumSize(QtCore.QSize(0, 150)) + self.toolBox_5.setMaximumSize(QtCore.QSize(16777215, 250)) + self.toolBox_5.setObjectName("toolBox_5") + self.page_12 = QtWidgets.QWidget() + self.page_12.setGeometry(QtCore.QRect(0, 0, 309, 41)) + self.page_12.setObjectName("page_12") + self.gridLayout_56 = QtWidgets.QGridLayout(self.page_12) + self.gridLayout_56.setObjectName("gridLayout_56") + self.pushButton_co_expr_plot = QtWidgets.QPushButton(self.page_12) + self.pushButton_co_expr_plot.setEnabled(False) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_co_expr_clean_list.sizePolicy().hasHeightForWidth()) - self.pushButton_co_expr_clean_list.setSizePolicy(sizePolicy) - self.pushButton_co_expr_clean_list.setObjectName("pushButton_co_expr_clean_list") - self.verticalLayout_2.addWidget(self.pushButton_co_expr_clean_list) - self.pushButton_co_expr_add_a_list = QtWidgets.QPushButton(self.tab_5) - self.pushButton_co_expr_add_a_list.setEnabled(False) - self.pushButton_co_expr_add_a_list.setObjectName("pushButton_co_expr_add_a_list") - self.verticalLayout_2.addWidget(self.pushButton_co_expr_add_a_list) - self.gridLayout_47.addLayout(self.verticalLayout_2, 5, 0, 1, 1) - self.radioButton_co_expr_bygroup = QtWidgets.QRadioButton(self.tab_5) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHeightForWidth(self.pushButton_co_expr_plot.sizePolicy().hasHeightForWidth()) + self.pushButton_co_expr_plot.setSizePolicy(sizePolicy) + self.pushButton_co_expr_plot.setObjectName("pushButton_co_expr_plot") + self.gridLayout_56.addWidget(self.pushButton_co_expr_plot, 0, 0, 1, 1) + self.pushButton_co_expr_heatmap_plot = QtWidgets.QPushButton(self.page_12) + self.pushButton_co_expr_heatmap_plot.setEnabled(False) + self.pushButton_co_expr_heatmap_plot.setObjectName("pushButton_co_expr_heatmap_plot") + self.gridLayout_56.addWidget(self.pushButton_co_expr_heatmap_plot, 0, 1, 1, 1) + self.toolBox_5.addItem(self.page_12, "") + self.page_13 = QtWidgets.QWidget() + self.page_13.setGeometry(QtCore.QRect(0, 0, 888, 145)) + self.page_13.setObjectName("page_13") + self.gridLayout_57 = QtWidgets.QGridLayout(self.page_13) + self.gridLayout_57.setObjectName("gridLayout_57") + self.gridLayout_58 = QtWidgets.QGridLayout() + self.gridLayout_58.setObjectName("gridLayout_58") + self.horizontalLayout_60 = QtWidgets.QHBoxLayout() + self.horizontalLayout_60.setObjectName("horizontalLayout_60") + self.label_190 = QtWidgets.QLabel(self.page_13) + self.label_190.setObjectName("label_190") + self.horizontalLayout_60.addWidget(self.label_190) + self.checkBox_corr_hetatmap_show_all_labels_x = QtWidgets.QCheckBox(self.page_13) + self.checkBox_corr_hetatmap_show_all_labels_x.setObjectName("checkBox_corr_hetatmap_show_all_labels_x") + self.horizontalLayout_60.addWidget(self.checkBox_corr_hetatmap_show_all_labels_x) + self.checkBox_corr_hetatmap_show_all_labels_y = QtWidgets.QCheckBox(self.page_13) + self.checkBox_corr_hetatmap_show_all_labels_y.setObjectName("checkBox_corr_hetatmap_show_all_labels_y") + self.horizontalLayout_60.addWidget(self.checkBox_corr_hetatmap_show_all_labels_y) + self.gridLayout_58.addLayout(self.horizontalLayout_60, 4, 1, 1, 1) + self.checkBox_co_expr_rename_taxa = QtWidgets.QCheckBox(self.page_13) + self.checkBox_co_expr_rename_taxa.setEnabled(True) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.radioButton_co_expr_bygroup.sizePolicy().hasHeightForWidth()) - self.radioButton_co_expr_bygroup.setSizePolicy(sizePolicy) - self.radioButton_co_expr_bygroup.setChecked(True) - self.radioButton_co_expr_bygroup.setObjectName("radioButton_co_expr_bygroup") - self.gridLayout_47.addWidget(self.radioButton_co_expr_bygroup, 1, 0, 1, 1) - self.comboBox_co_expr_corr_method = QtWidgets.QComboBox(self.tab_5) - self.comboBox_co_expr_corr_method.setObjectName("comboBox_co_expr_corr_method") - self.comboBox_co_expr_corr_method.addItem("") - self.comboBox_co_expr_corr_method.addItem("") - self.gridLayout_47.addWidget(self.comboBox_co_expr_corr_method, 1, 8, 1, 1) - self.label_66 = QtWidgets.QLabel(self.tab_5) + sizePolicy.setHeightForWidth(self.checkBox_co_expr_rename_taxa.sizePolicy().hasHeightForWidth()) + self.checkBox_co_expr_rename_taxa.setSizePolicy(sizePolicy) + self.checkBox_co_expr_rename_taxa.setChecked(True) + self.checkBox_co_expr_rename_taxa.setObjectName("checkBox_co_expr_rename_taxa") + self.gridLayout_58.addWidget(self.checkBox_co_expr_rename_taxa, 1, 1, 1, 1) + self.label_66 = QtWidgets.QLabel(self.page_13) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) @@ -2659,105 +3244,85 @@ def setupUi(self, metaX_main): self.label_66.setSizePolicy(sizePolicy) self.label_66.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter) self.label_66.setObjectName("label_66") - self.gridLayout_47.addWidget(self.label_66, 2, 8, 1, 1) - self.doubleSpinBox_co_expr_corr_threshold = QtWidgets.QDoubleSpinBox(self.tab_5) + self.gridLayout_58.addWidget(self.label_66, 3, 1, 1, 1) + self.horizontalLayout_54 = QtWidgets.QHBoxLayout() + self.horizontalLayout_54.setObjectName("horizontalLayout_54") + self.label_65 = QtWidgets.QLabel(self.page_13) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.doubleSpinBox_co_expr_corr_threshold.sizePolicy().hasHeightForWidth()) - self.doubleSpinBox_co_expr_corr_threshold.setSizePolicy(sizePolicy) - self.doubleSpinBox_co_expr_corr_threshold.setMaximum(1.0) - self.doubleSpinBox_co_expr_corr_threshold.setSingleStep(0.01) - self.doubleSpinBox_co_expr_corr_threshold.setProperty("value", 0.5) - self.doubleSpinBox_co_expr_corr_threshold.setObjectName("doubleSpinBox_co_expr_corr_threshold") - self.gridLayout_47.addWidget(self.doubleSpinBox_co_expr_corr_threshold, 3, 8, 1, 1) - self.pushButton_co_expr_add_to_list = QtWidgets.QPushButton(self.tab_5) - self.pushButton_co_expr_add_to_list.setEnabled(False) - self.pushButton_co_expr_add_to_list.setObjectName("pushButton_co_expr_add_to_list") - self.gridLayout_47.addWidget(self.pushButton_co_expr_add_to_list, 3, 3, 1, 1) - self.pushButton_co_expr_add_top = QtWidgets.QPushButton(self.tab_5) - self.pushButton_co_expr_add_top.setEnabled(False) - self.pushButton_co_expr_add_top.setObjectName("pushButton_co_expr_add_top") - self.gridLayout_47.addWidget(self.pushButton_co_expr_add_top, 4, 3, 1, 1) - self.comboBox_co_expr_select_list = QtWidgets.QComboBox(self.tab_5) - self.comboBox_co_expr_select_list.setMinimumSize(QtCore.QSize(600, 0)) - self.comboBox_co_expr_select_list.setObjectName("comboBox_co_expr_select_list") - self.gridLayout_47.addWidget(self.comboBox_co_expr_select_list, 3, 1, 1, 2) - self.horizontalLayout_43 = QtWidgets.QHBoxLayout() - self.horizontalLayout_43.setObjectName("horizontalLayout_43") - self.label_73 = QtWidgets.QLabel(self.tab_5) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHeightForWidth(self.label_65.sizePolicy().hasHeightForWidth()) + self.label_65.setSizePolicy(sizePolicy) + self.label_65.setObjectName("label_65") + self.horizontalLayout_54.addWidget(self.label_65) + self.comboBox_co_expr_corr_method = QtWidgets.QComboBox(self.page_13) + self.comboBox_co_expr_corr_method.setObjectName("comboBox_co_expr_corr_method") + self.comboBox_co_expr_corr_method.addItem("") + self.comboBox_co_expr_corr_method.addItem("") + self.horizontalLayout_54.addWidget(self.comboBox_co_expr_corr_method) + self.gridLayout_58.addLayout(self.horizontalLayout_54, 0, 1, 1, 1) + self.horizontalLayout_30 = QtWidgets.QHBoxLayout() + self.horizontalLayout_30.setObjectName("horizontalLayout_30") + self.label_162 = QtWidgets.QLabel(self.page_13) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.label_73.sizePolicy().hasHeightForWidth()) - self.label_73.setSizePolicy(sizePolicy) - self.label_73.setObjectName("label_73") - self.horizontalLayout_43.addWidget(self.label_73) - self.spinBox_co_expr_top_num = QtWidgets.QSpinBox(self.tab_5) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHeightForWidth(self.label_162.sizePolicy().hasHeightForWidth()) + self.label_162.setSizePolicy(sizePolicy) + self.label_162.setObjectName("label_162") + self.horizontalLayout_30.addWidget(self.label_162) + self.spinBox_co_expr_font_size = QtWidgets.QSpinBox(self.page_13) + self.spinBox_co_expr_font_size.setEnabled(True) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.spinBox_co_expr_top_num.sizePolicy().hasHeightForWidth()) - self.spinBox_co_expr_top_num.setSizePolicy(sizePolicy) - self.spinBox_co_expr_top_num.setMinimum(1) - self.spinBox_co_expr_top_num.setMaximum(99999) - self.spinBox_co_expr_top_num.setProperty("value", 10) - self.spinBox_co_expr_top_num.setObjectName("spinBox_co_expr_top_num") - self.horizontalLayout_43.addWidget(self.spinBox_co_expr_top_num) - self.label_74 = QtWidgets.QLabel(self.tab_5) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Preferred) + sizePolicy.setHeightForWidth(self.spinBox_co_expr_font_size.sizePolicy().hasHeightForWidth()) + self.spinBox_co_expr_font_size.setSizePolicy(sizePolicy) + self.spinBox_co_expr_font_size.setMinimum(1) + self.spinBox_co_expr_font_size.setProperty("value", 10) + self.spinBox_co_expr_font_size.setObjectName("spinBox_co_expr_font_size") + self.horizontalLayout_30.addWidget(self.spinBox_co_expr_font_size) + self.gridLayout_58.addLayout(self.horizontalLayout_30, 0, 3, 1, 1) + self.checkBox_co_expr_show_label = QtWidgets.QCheckBox(self.page_13) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.label_74.sizePolicy().hasHeightForWidth()) - self.label_74.setSizePolicy(sizePolicy) - self.label_74.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter) - self.label_74.setObjectName("label_74") - self.horizontalLayout_43.addWidget(self.label_74) - self.comboBox_co_expr_top_by = QtWidgets.QComboBox(self.tab_5) - self.comboBox_co_expr_top_by.setObjectName("comboBox_co_expr_top_by") - self.comboBox_co_expr_top_by.addItem("") - self.comboBox_co_expr_top_by.addItem("") - self.comboBox_co_expr_top_by.addItem("") - self.comboBox_co_expr_top_by.addItem("") - self.comboBox_co_expr_top_by.addItem("") - self.comboBox_co_expr_top_by.addItem("") - self.comboBox_co_expr_top_by.addItem("") - self.comboBox_co_expr_top_by.addItem("") - self.comboBox_co_expr_top_by.addItem("") - self.comboBox_co_expr_top_by.addItem("") - self.comboBox_co_expr_top_by.addItem("") - self.horizontalLayout_43.addWidget(self.comboBox_co_expr_top_by) - self.checkBox_co_expr_top_filtered = QtWidgets.QCheckBox(self.tab_5) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHeightForWidth(self.checkBox_co_expr_show_label.sizePolicy().hasHeightForWidth()) + self.checkBox_co_expr_show_label.setSizePolicy(sizePolicy) + self.checkBox_co_expr_show_label.setObjectName("checkBox_co_expr_show_label") + self.gridLayout_58.addWidget(self.checkBox_co_expr_show_label, 3, 3, 1, 1) + self.horizontalLayout_62 = QtWidgets.QHBoxLayout() + self.horizontalLayout_62.setObjectName("horizontalLayout_62") + self.label_191 = QtWidgets.QLabel(self.page_13) + self.label_191.setObjectName("label_191") + self.horizontalLayout_62.addWidget(self.label_191) + self.comboBox_corr_hetatmap_cmap = QtWidgets.QComboBox(self.page_13) + self.comboBox_corr_hetatmap_cmap.setObjectName("comboBox_corr_hetatmap_cmap") + self.horizontalLayout_62.addWidget(self.comboBox_corr_hetatmap_cmap) + self.gridLayout_58.addLayout(self.horizontalLayout_62, 4, 2, 1, 1) + self.doubleSpinBox_co_expr_corr_threshold = QtWidgets.QDoubleSpinBox(self.page_13) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.checkBox_co_expr_top_filtered.sizePolicy().hasHeightForWidth()) - self.checkBox_co_expr_top_filtered.setSizePolicy(sizePolicy) - self.checkBox_co_expr_top_filtered.setObjectName("checkBox_co_expr_top_filtered") - self.horizontalLayout_43.addWidget(self.checkBox_co_expr_top_filtered) - self.gridLayout_47.addLayout(self.horizontalLayout_43, 4, 1, 1, 2) - self.gridLayout_co_expr_sample = QtWidgets.QGridLayout() - self.gridLayout_co_expr_sample.setObjectName("gridLayout_co_expr_sample") - self.gridLayout_47.addLayout(self.gridLayout_co_expr_sample, 2, 1, 1, 3) - self.line_11 = QtWidgets.QFrame(self.tab_5) - self.line_11.setFrameShape(QtWidgets.QFrame.VLine) - self.line_11.setFrameShadow(QtWidgets.QFrame.Sunken) - self.line_11.setObjectName("line_11") - self.gridLayout_47.addWidget(self.line_11, 0, 7, 6, 1) - self.verticalLayout_3 = QtWidgets.QVBoxLayout() - self.verticalLayout_3.setObjectName("verticalLayout_3") - self.formLayout = QtWidgets.QFormLayout() - self.formLayout.setObjectName("formLayout") - self.label_125 = QtWidgets.QLabel(self.tab_5) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHeightForWidth(self.doubleSpinBox_co_expr_corr_threshold.sizePolicy().hasHeightForWidth()) + self.doubleSpinBox_co_expr_corr_threshold.setSizePolicy(sizePolicy) + self.doubleSpinBox_co_expr_corr_threshold.setMaximum(1.0) + self.doubleSpinBox_co_expr_corr_threshold.setSingleStep(0.01) + self.doubleSpinBox_co_expr_corr_threshold.setProperty("value", 0.5) + self.doubleSpinBox_co_expr_corr_threshold.setObjectName("doubleSpinBox_co_expr_corr_threshold") + self.gridLayout_58.addWidget(self.doubleSpinBox_co_expr_corr_threshold, 3, 2, 1, 1) + self.horizontalLayout_7 = QtWidgets.QHBoxLayout() + self.horizontalLayout_7.setObjectName("horizontalLayout_7") + self.label_125 = QtWidgets.QLabel(self.page_13) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.label_125.sizePolicy().hasHeightForWidth()) self.label_125.setSizePolicy(sizePolicy) self.label_125.setObjectName("label_125") - self.formLayout.setWidget(0, QtWidgets.QFormLayout.LabelRole, self.label_125) - self.spinBox_co_expr_width = QtWidgets.QSpinBox(self.tab_5) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Fixed) + self.horizontalLayout_7.addWidget(self.label_125) + self.spinBox_co_expr_width = QtWidgets.QSpinBox(self.page_13) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.spinBox_co_expr_width.sizePolicy().hasHeightForWidth()) @@ -2768,16 +3333,16 @@ def setupUi(self, metaX_main): self.spinBox_co_expr_width.setProperty("value", 10) self.spinBox_co_expr_width.setDisplayIntegerBase(10) self.spinBox_co_expr_width.setObjectName("spinBox_co_expr_width") - self.formLayout.setWidget(0, QtWidgets.QFormLayout.FieldRole, self.spinBox_co_expr_width) - self.label_124 = QtWidgets.QLabel(self.tab_5) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) + self.horizontalLayout_7.addWidget(self.spinBox_co_expr_width) + self.label_124 = QtWidgets.QLabel(self.page_13) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.label_124.sizePolicy().hasHeightForWidth()) self.label_124.setSizePolicy(sizePolicy) self.label_124.setObjectName("label_124") - self.formLayout.setWidget(1, QtWidgets.QFormLayout.LabelRole, self.label_124) - self.spinBox_co_expr_height = QtWidgets.QSpinBox(self.tab_5) + self.horizontalLayout_7.addWidget(self.label_124) + self.spinBox_co_expr_height = QtWidgets.QSpinBox(self.page_13) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) @@ -2789,55 +3354,65 @@ def setupUi(self, metaX_main): self.spinBox_co_expr_height.setSingleStep(1) self.spinBox_co_expr_height.setProperty("value", 8) self.spinBox_co_expr_height.setObjectName("spinBox_co_expr_height") - self.formLayout.setWidget(1, QtWidgets.QFormLayout.FieldRole, self.spinBox_co_expr_height) - self.label_162 = QtWidgets.QLabel(self.tab_5) - self.label_162.setObjectName("label_162") - self.formLayout.setWidget(2, QtWidgets.QFormLayout.LabelRole, self.label_162) - self.spinBox_co_expr_font_size = QtWidgets.QSpinBox(self.tab_5) - self.spinBox_co_expr_font_size.setEnabled(True) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.spinBox_co_expr_font_size.sizePolicy().hasHeightForWidth()) - self.spinBox_co_expr_font_size.setSizePolicy(sizePolicy) - self.spinBox_co_expr_font_size.setMinimum(1) - self.spinBox_co_expr_font_size.setProperty("value", 10) - self.spinBox_co_expr_font_size.setObjectName("spinBox_co_expr_font_size") - self.formLayout.setWidget(2, QtWidgets.QFormLayout.FieldRole, self.spinBox_co_expr_font_size) - self.checkBox_co_expr_show_label = QtWidgets.QCheckBox(self.tab_5) - self.checkBox_co_expr_show_label.setObjectName("checkBox_co_expr_show_label") - self.formLayout.setWidget(3, QtWidgets.QFormLayout.LabelRole, self.checkBox_co_expr_show_label) - self.checkBox_co_expr_rename_taxa = QtWidgets.QCheckBox(self.tab_5) - self.checkBox_co_expr_rename_taxa.setEnabled(True) - self.checkBox_co_expr_rename_taxa.setChecked(True) - self.checkBox_co_expr_rename_taxa.setObjectName("checkBox_co_expr_rename_taxa") - self.formLayout.setWidget(3, QtWidgets.QFormLayout.FieldRole, self.checkBox_co_expr_rename_taxa) - self.verticalLayout_3.addLayout(self.formLayout) - self.checkBox_co_expr_plot_list_only = QtWidgets.QCheckBox(self.tab_5) + self.horizontalLayout_7.addWidget(self.spinBox_co_expr_height) + self.gridLayout_58.addLayout(self.horizontalLayout_7, 0, 2, 1, 1) + self.label_189 = QtWidgets.QLabel(self.page_13) + font = QtGui.QFont() + font.setBold(True) + font.setWeight(75) + self.label_189.setFont(font) + self.label_189.setObjectName("label_189") + self.gridLayout_58.addWidget(self.label_189, 4, 0, 1, 1) + self.label_187 = QtWidgets.QLabel(self.page_13) + font = QtGui.QFont() + font.setBold(True) + font.setWeight(75) + self.label_187.setFont(font) + self.label_187.setObjectName("label_187") + self.gridLayout_58.addWidget(self.label_187, 0, 0, 1, 1) + self.label_188 = QtWidgets.QLabel(self.page_13) + font = QtGui.QFont() + font.setBold(True) + font.setWeight(75) + self.label_188.setFont(font) + self.label_188.setObjectName("label_188") + self.gridLayout_58.addWidget(self.label_188, 3, 0, 1, 1) + self.checkBox_co_expr_plot_list_only = QtWidgets.QCheckBox(self.page_13) + self.checkBox_co_expr_plot_list_only.setChecked(True) self.checkBox_co_expr_plot_list_only.setObjectName("checkBox_co_expr_plot_list_only") - self.verticalLayout_3.addWidget(self.checkBox_co_expr_plot_list_only) - self.pushButton_co_expr_plot = QtWidgets.QPushButton(self.tab_5) - self.pushButton_co_expr_plot.setEnabled(False) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Preferred) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_co_expr_plot.sizePolicy().hasHeightForWidth()) - self.pushButton_co_expr_plot.setSizePolicy(sizePolicy) - self.pushButton_co_expr_plot.setObjectName("pushButton_co_expr_plot") - self.verticalLayout_3.addWidget(self.pushButton_co_expr_plot) - self.gridLayout_47.addLayout(self.verticalLayout_3, 5, 8, 1, 1) - self.gridLayout_co_expr_group = QtWidgets.QGridLayout() - self.gridLayout_co_expr_group.setObjectName("gridLayout_co_expr_group") - self.gridLayout_47.addLayout(self.gridLayout_co_expr_group, 1, 2, 1, 2) + self.gridLayout_58.addWidget(self.checkBox_co_expr_plot_list_only, 1, 2, 1, 1) + self.line_30 = QtWidgets.QFrame(self.page_13) + self.line_30.setFrameShape(QtWidgets.QFrame.HLine) + self.line_30.setFrameShadow(QtWidgets.QFrame.Sunken) + self.line_30.setObjectName("line_30") + self.gridLayout_58.addWidget(self.line_30, 2, 1, 1, 3) + self.gridLayout_57.addLayout(self.gridLayout_58, 1, 0, 1, 1) + self.toolBox_5.addItem(self.page_13, "") + self.gridLayout_47.addWidget(self.toolBox_5, 8, 0, 1, 4) + self.listWidget_co_expr_focus_list = QtWidgets.QListWidget(self.tab_5) + self.listWidget_co_expr_focus_list.setObjectName("listWidget_co_expr_focus_list") + self.gridLayout_47.addWidget(self.listWidget_co_expr_focus_list, 7, 1, 1, 3) + self.line_17 = QtWidgets.QFrame(self.tab_5) + self.line_17.setFrameShape(QtWidgets.QFrame.HLine) + self.line_17.setFrameShadow(QtWidgets.QFrame.Sunken) + self.line_17.setObjectName("line_17") + self.gridLayout_47.addWidget(self.line_17, 4, 0, 1, 4) self.tabWidget.addTab(self.tab_5, "") self.tab_15 = QtWidgets.QWidget() self.tab_15.setObjectName("tab_15") self.gridLayout_24 = QtWidgets.QGridLayout(self.tab_15) self.gridLayout_24.setObjectName("gridLayout_24") - self.label_93 = QtWidgets.QLabel(self.tab_15) - self.label_93.setObjectName("label_93") - self.gridLayout_24.addWidget(self.label_93, 10, 6, 1, 1) - self.pushButton_trends_get_trends_table = QtWidgets.QPushButton(self.tab_15) + self.toolBox_6 = QtWidgets.QToolBox(self.tab_15) + self.toolBox_6.setMaximumSize(QtCore.QSize(16777215, 210)) + self.toolBox_6.setObjectName("toolBox_6") + self.page_14 = QtWidgets.QWidget() + self.page_14.setGeometry(QtCore.QRect(0, 0, 490, 81)) + self.page_14.setObjectName("page_14") + self.gridLayout_62 = QtWidgets.QGridLayout(self.page_14) + self.gridLayout_62.setObjectName("gridLayout_62") + self.gridLayout_61 = QtWidgets.QGridLayout() + self.gridLayout_61.setObjectName("gridLayout_61") + self.pushButton_trends_get_trends_table = QtWidgets.QPushButton(self.page_14) self.pushButton_trends_get_trends_table.setEnabled(False) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) @@ -2845,73 +3420,359 @@ def setupUi(self, metaX_main): sizePolicy.setHeightForWidth(self.pushButton_trends_get_trends_table.sizePolicy().hasHeightForWidth()) self.pushButton_trends_get_trends_table.setSizePolicy(sizePolicy) self.pushButton_trends_get_trends_table.setObjectName("pushButton_trends_get_trends_table") - self.gridLayout_24.addWidget(self.pushButton_trends_get_trends_table, 13, 7, 1, 1) - self.label_92 = QtWidgets.QLabel(self.tab_15) + self.gridLayout_61.addWidget(self.pushButton_trends_get_trends_table, 2, 4, 1, 1) + self.line_20 = QtWidgets.QFrame(self.page_14) + self.line_20.setFrameShape(QtWidgets.QFrame.HLine) + self.line_20.setFrameShadow(QtWidgets.QFrame.Sunken) + self.line_20.setObjectName("line_20") + self.gridLayout_61.addWidget(self.line_20, 1, 1, 1, 4) + self.label_95 = QtWidgets.QLabel(self.page_14) + self.label_95.setObjectName("label_95") + self.gridLayout_61.addWidget(self.label_95, 0, 1, 1, 1) + self.label_93 = QtWidgets.QLabel(self.page_14) + self.label_93.setObjectName("label_93") + self.gridLayout_61.addWidget(self.label_93, 2, 1, 1, 1) + self.pushButton_trends_plot_trends = QtWidgets.QPushButton(self.page_14) + self.pushButton_trends_plot_trends.setEnabled(False) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.MinimumExpanding) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.pushButton_trends_plot_trends.sizePolicy().hasHeightForWidth()) + self.pushButton_trends_plot_trends.setSizePolicy(sizePolicy) + self.pushButton_trends_plot_trends.setObjectName("pushButton_trends_plot_trends") + self.gridLayout_61.addWidget(self.pushButton_trends_plot_trends, 0, 3, 1, 2) + self.pushButton_trends_plot_interactive_line = QtWidgets.QPushButton(self.page_14) + self.pushButton_trends_plot_interactive_line.setEnabled(False) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.MinimumExpanding) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.pushButton_trends_plot_interactive_line.sizePolicy().hasHeightForWidth()) + self.pushButton_trends_plot_interactive_line.setSizePolicy(sizePolicy) + self.pushButton_trends_plot_interactive_line.setObjectName("pushButton_trends_plot_interactive_line") + self.gridLayout_61.addWidget(self.pushButton_trends_plot_interactive_line, 2, 3, 1, 1) + self.comboBox_trends_get_cluster_name = QtWidgets.QComboBox(self.page_14) + self.comboBox_trends_get_cluster_name.setObjectName("comboBox_trends_get_cluster_name") + self.gridLayout_61.addWidget(self.comboBox_trends_get_cluster_name, 2, 2, 1, 1) + self.spinBox_trends_num_cluster = QtWidgets.QSpinBox(self.page_14) + self.spinBox_trends_num_cluster.setMinimum(1) + self.spinBox_trends_num_cluster.setProperty("value", 5) + self.spinBox_trends_num_cluster.setObjectName("spinBox_trends_num_cluster") + self.gridLayout_61.addWidget(self.spinBox_trends_num_cluster, 0, 2, 1, 1) + self.label_145 = QtWidgets.QLabel(self.page_14) + font = QtGui.QFont() + font.setBold(True) + font.setWeight(75) + self.label_145.setFont(font) + self.label_145.setObjectName("label_145") + self.gridLayout_61.addWidget(self.label_145, 0, 0, 1, 1) + self.label_165 = QtWidgets.QLabel(self.page_14) + font = QtGui.QFont() + font.setBold(True) + font.setWeight(75) + self.label_165.setFont(font) + self.label_165.setObjectName("label_165") + self.gridLayout_61.addWidget(self.label_165, 2, 0, 1, 1) + self.gridLayout_62.addLayout(self.gridLayout_61, 0, 0, 1, 1) + self.toolBox_6.addItem(self.page_14, "") + self.page_15 = QtWidgets.QWidget() + self.page_15.setGeometry(QtCore.QRect(0, 0, 538, 63)) + self.page_15.setObjectName("page_15") + self.gridLayout_60 = QtWidgets.QGridLayout(self.page_15) + self.gridLayout_60.setObjectName("gridLayout_60") + self.gridLayout_59 = QtWidgets.QGridLayout() + self.gridLayout_59.setObjectName("gridLayout_59") + self.label_174 = QtWidgets.QLabel(self.page_15) + font = QtGui.QFont() + font.setBold(True) + font.setWeight(75) + self.label_174.setFont(font) + self.label_174.setObjectName("label_174") + self.gridLayout_59.addWidget(self.label_174, 0, 0, 1, 1) + self.spinBox_trends_height = QtWidgets.QSpinBox(self.page_15) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.spinBox_trends_height.sizePolicy().hasHeightForWidth()) + self.spinBox_trends_height.setSizePolicy(sizePolicy) + self.spinBox_trends_height.setMinimum(1) + self.spinBox_trends_height.setMaximum(200) + self.spinBox_trends_height.setProperty("value", 9) + self.spinBox_trends_height.setObjectName("spinBox_trends_height") + self.gridLayout_59.addWidget(self.spinBox_trends_height, 0, 4, 1, 1) + self.label_175 = QtWidgets.QLabel(self.page_15) + font = QtGui.QFont() + font.setBold(True) + font.setWeight(75) + self.label_175.setFont(font) + self.label_175.setObjectName("label_175") + self.gridLayout_59.addWidget(self.label_175, 1, 0, 1, 1) + self.checkBox_get_trends_cluster_intensity = QtWidgets.QCheckBox(self.page_15) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.checkBox_get_trends_cluster_intensity.sizePolicy().hasHeightForWidth()) + self.checkBox_get_trends_cluster_intensity.setSizePolicy(sizePolicy) + self.checkBox_get_trends_cluster_intensity.setObjectName("checkBox_get_trends_cluster_intensity") + self.gridLayout_59.addWidget(self.checkBox_get_trends_cluster_intensity, 1, 3, 1, 2) + self.label_158 = QtWidgets.QLabel(self.page_15) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Preferred) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.label_158.sizePolicy().hasHeightForWidth()) + self.label_158.setSizePolicy(sizePolicy) + self.label_158.setObjectName("label_158") + self.gridLayout_59.addWidget(self.label_158, 0, 5, 1, 1) + self.label_92 = QtWidgets.QLabel(self.page_15) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.label_92.sizePolicy().hasHeightForWidth()) self.label_92.setSizePolicy(sizePolicy) self.label_92.setObjectName("label_92") - self.gridLayout_24.addWidget(self.label_92, 6, 7, 1, 1) - self.checkBox_trends_plot_interactive_plot_samples = QtWidgets.QCheckBox(self.tab_15) + self.gridLayout_59.addWidget(self.label_92, 0, 3, 1, 1) + self.checkBox_trends_plot_interactive_show_legend = QtWidgets.QCheckBox(self.page_15) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.checkBox_trends_plot_interactive_show_legend.sizePolicy().hasHeightForWidth()) + self.checkBox_trends_plot_interactive_show_legend.setSizePolicy(sizePolicy) + self.checkBox_trends_plot_interactive_show_legend.setChecked(True) + self.checkBox_trends_plot_interactive_show_legend.setObjectName("checkBox_trends_plot_interactive_show_legend") + self.gridLayout_59.addWidget(self.checkBox_trends_plot_interactive_show_legend, 1, 5, 1, 1) + self.checkBox_trends_plot_interactive_plot_samples = QtWidgets.QCheckBox(self.page_15) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.checkBox_trends_plot_interactive_plot_samples.sizePolicy().hasHeightForWidth()) + self.checkBox_trends_plot_interactive_plot_samples.setSizePolicy(sizePolicy) self.checkBox_trends_plot_interactive_plot_samples.setObjectName("checkBox_trends_plot_interactive_plot_samples") - self.gridLayout_24.addWidget(self.checkBox_trends_plot_interactive_plot_samples, 11, 7, 1, 1) - self.radioButton_trends_group = QtWidgets.QRadioButton(self.tab_15) + self.gridLayout_59.addWidget(self.checkBox_trends_plot_interactive_plot_samples, 1, 1, 1, 2) + self.checkBox_trends_plot_interactive_rename_taxa = QtWidgets.QCheckBox(self.page_15) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.radioButton_trends_group.sizePolicy().hasHeightForWidth()) - self.radioButton_trends_group.setSizePolicy(sizePolicy) - self.radioButton_trends_group.setChecked(True) - self.radioButton_trends_group.setObjectName("radioButton_trends_group") - self.gridLayout_24.addWidget(self.radioButton_trends_group, 1, 0, 1, 1) - self.label_97 = QtWidgets.QLabel(self.tab_15) + sizePolicy.setHeightForWidth(self.checkBox_trends_plot_interactive_rename_taxa.sizePolicy().hasHeightForWidth()) + self.checkBox_trends_plot_interactive_rename_taxa.setSizePolicy(sizePolicy) + self.checkBox_trends_plot_interactive_rename_taxa.setChecked(True) + self.checkBox_trends_plot_interactive_rename_taxa.setObjectName("checkBox_trends_plot_interactive_rename_taxa") + self.gridLayout_59.addWidget(self.checkBox_trends_plot_interactive_rename_taxa, 1, 6, 1, 1) + self.label_97 = QtWidgets.QLabel(self.page_15) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.label_97.sizePolicy().hasHeightForWidth()) self.label_97.setSizePolicy(sizePolicy) self.label_97.setObjectName("label_97") - self.gridLayout_24.addWidget(self.label_97, 6, 6, 1, 1) - self.pushButton_trends_plot_interactive_line = QtWidgets.QPushButton(self.tab_15) - self.pushButton_trends_plot_interactive_line.setEnabled(False) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.MinimumExpanding) + self.gridLayout_59.addWidget(self.label_97, 0, 1, 1, 1) + self.spinBox_trends_width = QtWidgets.QSpinBox(self.page_15) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.spinBox_trends_width.sizePolicy().hasHeightForWidth()) + self.spinBox_trends_width.setSizePolicy(sizePolicy) + self.spinBox_trends_width.setMinimum(1) + self.spinBox_trends_width.setMaximum(200) + self.spinBox_trends_width.setProperty("value", 16) + self.spinBox_trends_width.setObjectName("spinBox_trends_width") + self.gridLayout_59.addWidget(self.spinBox_trends_width, 0, 2, 1, 1) + self.spinBox_trends_font_size = QtWidgets.QSpinBox(self.page_15) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.spinBox_trends_font_size.sizePolicy().hasHeightForWidth()) + self.spinBox_trends_font_size.setSizePolicy(sizePolicy) + self.spinBox_trends_font_size.setMinimum(1) + self.spinBox_trends_font_size.setProperty("value", 10) + self.spinBox_trends_font_size.setObjectName("spinBox_trends_font_size") + self.gridLayout_59.addWidget(self.spinBox_trends_font_size, 0, 6, 1, 1) + self.gridLayout_60.addLayout(self.gridLayout_59, 0, 0, 1, 1) + self.toolBox_6.addItem(self.page_15, "") + self.gridLayout_24.addWidget(self.toolBox_6, 15, 0, 1, 6) + self.pushButton_trends_add = QtWidgets.QPushButton(self.tab_15) + self.pushButton_trends_add.setEnabled(False) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.pushButton_trends_add.sizePolicy().hasHeightForWidth()) + self.pushButton_trends_add.setSizePolicy(sizePolicy) + self.pushButton_trends_add.setObjectName("pushButton_trends_add") + self.gridLayout_24.addWidget(self.pushButton_trends_add, 5, 5, 1, 1) + self.horizontalLayout_46 = QtWidgets.QHBoxLayout() + self.horizontalLayout_46.setObjectName("horizontalLayout_46") + self.label_99 = QtWidgets.QLabel(self.tab_15) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Preferred) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.label_99.sizePolicy().hasHeightForWidth()) + self.label_99.setSizePolicy(sizePolicy) + self.label_99.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter) + self.label_99.setObjectName("label_99") + self.horizontalLayout_46.addWidget(self.label_99) + self.spinBox_trends_top_num = QtWidgets.QSpinBox(self.tab_15) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.spinBox_trends_top_num.sizePolicy().hasHeightForWidth()) + self.spinBox_trends_top_num.setSizePolicy(sizePolicy) + self.spinBox_trends_top_num.setMinimum(1) + self.spinBox_trends_top_num.setMaximum(99999) + self.spinBox_trends_top_num.setProperty("value", 10) + self.spinBox_trends_top_num.setObjectName("spinBox_trends_top_num") + self.horizontalLayout_46.addWidget(self.spinBox_trends_top_num) + self.label_91 = QtWidgets.QLabel(self.tab_15) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.label_91.sizePolicy().hasHeightForWidth()) + self.label_91.setSizePolicy(sizePolicy) + self.label_91.setObjectName("label_91") + self.horizontalLayout_46.addWidget(self.label_91) + self.comboBox_trends_top_by = QtWidgets.QComboBox(self.tab_15) + self.comboBox_trends_top_by.setObjectName("comboBox_trends_top_by") + self.comboBox_trends_top_by.addItem("") + self.comboBox_trends_top_by.addItem("") + self.comboBox_trends_top_by.addItem("") + self.comboBox_trends_top_by.addItem("") + self.comboBox_trends_top_by.addItem("") + self.comboBox_trends_top_by.addItem("") + self.comboBox_trends_top_by.addItem("") + self.comboBox_trends_top_by.addItem("") + self.comboBox_trends_top_by.addItem("") + self.comboBox_trends_top_by.addItem("") + self.comboBox_trends_top_by.addItem("") + self.horizontalLayout_46.addWidget(self.comboBox_trends_top_by) + self.checkBox_trends_top_filtered = QtWidgets.QCheckBox(self.tab_15) + self.checkBox_trends_top_filtered.setObjectName("checkBox_trends_top_filtered") + self.horizontalLayout_46.addWidget(self.checkBox_trends_top_filtered) + self.gridLayout_24.addLayout(self.horizontalLayout_46, 6, 1, 1, 4) + self.pushButton_trends_add_top = QtWidgets.QPushButton(self.tab_15) + self.pushButton_trends_add_top.setEnabled(False) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.pushButton_trends_add_top.sizePolicy().hasHeightForWidth()) + self.pushButton_trends_add_top.setSizePolicy(sizePolicy) + self.pushButton_trends_add_top.setObjectName("pushButton_trends_add_top") + self.gridLayout_24.addWidget(self.pushButton_trends_add_top, 6, 5, 1, 1) + self.comboBox_trends_selection_list = QtWidgets.QComboBox(self.tab_15) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Preferred) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.comboBox_trends_selection_list.sizePolicy().hasHeightForWidth()) + self.comboBox_trends_selection_list.setSizePolicy(sizePolicy) + self.comboBox_trends_selection_list.setMinimumSize(QtCore.QSize(600, 0)) + self.comboBox_trends_selection_list.setObjectName("comboBox_trends_selection_list") + self.gridLayout_24.addWidget(self.comboBox_trends_selection_list, 5, 1, 1, 4) + self.label_98 = QtWidgets.QLabel(self.tab_15) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Maximum) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.label_98.sizePolicy().hasHeightForWidth()) + self.label_98.setSizePolicy(sizePolicy) + self.label_98.setObjectName("label_98") + self.gridLayout_24.addWidget(self.label_98, 7, 0, 1, 1) + self.horizontalLayout_45 = QtWidgets.QHBoxLayout() + self.horizontalLayout_45.setObjectName("horizontalLayout_45") + self.checkBox_trends_in_condition = QtWidgets.QCheckBox(self.tab_15) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.checkBox_trends_in_condition.sizePolicy().hasHeightForWidth()) + self.checkBox_trends_in_condition.setSizePolicy(sizePolicy) + self.checkBox_trends_in_condition.setLayoutDirection(QtCore.Qt.LeftToRight) + self.checkBox_trends_in_condition.setObjectName("checkBox_trends_in_condition") + self.horizontalLayout_45.addWidget(self.checkBox_trends_in_condition) + self.comboBox_trends_condition_meta = QtWidgets.QComboBox(self.tab_15) + self.comboBox_trends_condition_meta.setEnabled(False) + self.comboBox_trends_condition_meta.setObjectName("comboBox_trends_condition_meta") + self.horizontalLayout_45.addWidget(self.comboBox_trends_condition_meta) + self.horizontalLayout_76 = QtWidgets.QHBoxLayout() + self.horizontalLayout_76.setObjectName("horizontalLayout_76") + self.comboBox_trends_condition_group = QtWidgets.QComboBox(self.tab_15) + self.comboBox_trends_condition_group.setEnabled(False) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.comboBox_trends_condition_group.sizePolicy().hasHeightForWidth()) + self.comboBox_trends_condition_group.setSizePolicy(sizePolicy) + self.comboBox_trends_condition_group.setObjectName("comboBox_trends_condition_group") + self.horizontalLayout_76.addWidget(self.comboBox_trends_condition_group) + self.horizontalLayout_45.addLayout(self.horizontalLayout_76) + self.gridLayout_24.addLayout(self.horizontalLayout_45, 2, 1, 1, 3) + self.label_100 = QtWidgets.QLabel(self.tab_15) + self.label_100.setObjectName("label_100") + self.gridLayout_24.addWidget(self.label_100, 5, 0, 1, 1) + self.radioButton_trends_sample = QtWidgets.QRadioButton(self.tab_15) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.radioButton_trends_sample.sizePolicy().hasHeightForWidth()) + self.radioButton_trends_sample.setSizePolicy(sizePolicy) + self.radioButton_trends_sample.setObjectName("radioButton_trends_sample") + self.gridLayout_24.addWidget(self.radioButton_trends_sample, 3, 0, 1, 1) + self.radioButton_trends_group = QtWidgets.QRadioButton(self.tab_15) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_trends_plot_interactive_line.sizePolicy().hasHeightForWidth()) - self.pushButton_trends_plot_interactive_line.setSizePolicy(sizePolicy) - self.pushButton_trends_plot_interactive_line.setObjectName("pushButton_trends_plot_interactive_line") - self.gridLayout_24.addWidget(self.pushButton_trends_plot_interactive_line, 13, 6, 1, 1) + sizePolicy.setHeightForWidth(self.radioButton_trends_group.sizePolicy().hasHeightForWidth()) + self.radioButton_trends_group.setSizePolicy(sizePolicy) + self.radioButton_trends_group.setChecked(True) + self.radioButton_trends_group.setObjectName("radioButton_trends_group") + self.gridLayout_24.addWidget(self.radioButton_trends_group, 2, 0, 1, 1) + self.verticalLayout_trends_sample = QtWidgets.QVBoxLayout() + self.verticalLayout_trends_sample.setObjectName("verticalLayout_trends_sample") + self.gridLayout_24.addLayout(self.verticalLayout_trends_sample, 3, 1, 1, 5) + self.verticalLayout_trends_group = QtWidgets.QVBoxLayout() + self.verticalLayout_trends_group.setObjectName("verticalLayout_trends_group") + self.gridLayout_24.addLayout(self.verticalLayout_trends_group, 2, 4, 1, 2) + self.line_18 = QtWidgets.QFrame(self.tab_15) + self.line_18.setFrameShape(QtWidgets.QFrame.HLine) + self.line_18.setFrameShadow(QtWidgets.QFrame.Sunken) + self.line_18.setObjectName("line_18") + self.gridLayout_24.addWidget(self.line_18, 1, 0, 1, 6) + self.line_19 = QtWidgets.QFrame(self.tab_15) + self.line_19.setFrameShape(QtWidgets.QFrame.HLine) + self.line_19.setFrameShadow(QtWidgets.QFrame.Sunken) + self.line_19.setObjectName("line_19") + self.gridLayout_24.addWidget(self.line_19, 4, 0, 1, 6) + self.verticalLayout_3 = QtWidgets.QVBoxLayout() + self.verticalLayout_3.setObjectName("verticalLayout_3") self.pushButton_trends_drop_item = QtWidgets.QPushButton(self.tab_15) self.pushButton_trends_drop_item.setEnabled(False) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.pushButton_trends_drop_item.sizePolicy().hasHeightForWidth()) self.pushButton_trends_drop_item.setSizePolicy(sizePolicy) self.pushButton_trends_drop_item.setObjectName("pushButton_trends_drop_item") - self.gridLayout_24.addWidget(self.pushButton_trends_drop_item, 7, 0, 1, 1) - self.checkBox_trends_plot_interactive_rename_taxa = QtWidgets.QCheckBox(self.tab_15) - self.checkBox_trends_plot_interactive_rename_taxa.setObjectName("checkBox_trends_plot_interactive_rename_taxa") - self.gridLayout_24.addWidget(self.checkBox_trends_plot_interactive_rename_taxa, 12, 6, 1, 1) - self.checkBox_get_trends_cluster_intensity = QtWidgets.QCheckBox(self.tab_15) - self.checkBox_get_trends_cluster_intensity.setObjectName("checkBox_get_trends_cluster_intensity") - self.gridLayout_24.addWidget(self.checkBox_get_trends_cluster_intensity, 11, 6, 1, 1) - self.spinBox_trends_num_cluster = QtWidgets.QSpinBox(self.tab_15) - self.spinBox_trends_num_cluster.setMinimum(1) - self.spinBox_trends_num_cluster.setProperty("value", 5) - self.spinBox_trends_num_cluster.setObjectName("spinBox_trends_num_cluster") - self.gridLayout_24.addWidget(self.spinBox_trends_num_cluster, 8, 7, 1, 1) - self.pushButton_trends_add_top = QtWidgets.QPushButton(self.tab_15) - self.pushButton_trends_add_top.setEnabled(False) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) + self.verticalLayout_3.addWidget(self.pushButton_trends_drop_item) + self.pushButton_trends_clean_list = QtWidgets.QPushButton(self.tab_15) + self.pushButton_trends_clean_list.setEnabled(False) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_trends_add_top.sizePolicy().hasHeightForWidth()) - self.pushButton_trends_add_top.setSizePolicy(sizePolicy) - self.pushButton_trends_add_top.setObjectName("pushButton_trends_add_top") - self.gridLayout_24.addWidget(self.pushButton_trends_add_top, 4, 6, 1, 2) + sizePolicy.setHeightForWidth(self.pushButton_trends_clean_list.sizePolicy().hasHeightForWidth()) + self.pushButton_trends_clean_list.setSizePolicy(sizePolicy) + self.pushButton_trends_clean_list.setObjectName("pushButton_trends_clean_list") + self.verticalLayout_3.addWidget(self.pushButton_trends_clean_list) + self.pushButton_trends_add_a_list = QtWidgets.QPushButton(self.tab_15) + self.pushButton_trends_add_a_list.setEnabled(False) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Preferred) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.pushButton_trends_add_a_list.sizePolicy().hasHeightForWidth()) + self.pushButton_trends_add_a_list.setSizePolicy(sizePolicy) + self.pushButton_trends_add_a_list.setObjectName("pushButton_trends_add_a_list") + self.verticalLayout_3.addWidget(self.pushButton_trends_add_a_list) + self.gridLayout_24.addLayout(self.verticalLayout_3, 8, 0, 1, 1) + self.listWidget_trends_list_for_ploting = QtWidgets.QListWidget(self.tab_15) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Preferred) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.listWidget_trends_list_for_ploting.sizePolicy().hasHeightForWidth()) + self.listWidget_trends_list_for_ploting.setSizePolicy(sizePolicy) + self.listWidget_trends_list_for_ploting.setObjectName("listWidget_trends_list_for_ploting") + self.gridLayout_24.addWidget(self.listWidget_trends_list_for_ploting, 7, 1, 2, 5) self.horizontalLayout_44 = QtWidgets.QHBoxLayout() self.horizontalLayout_44.setObjectName("horizontalLayout_44") self.label_96 = QtWidgets.QLabel(self.tab_15) @@ -2939,296 +3800,305 @@ def setupUi(self, metaX_main): self.comboBox_trends_meta = QtWidgets.QComboBox(self.tab_15) self.comboBox_trends_meta.setObjectName("comboBox_trends_meta") self.horizontalLayout_44.addWidget(self.comboBox_trends_meta) - self.gridLayout_24.addLayout(self.horizontalLayout_44, 0, 0, 1, 3) - self.comboBox_trends_selection_list = QtWidgets.QComboBox(self.tab_15) + self.gridLayout_24.addLayout(self.horizontalLayout_44, 0, 0, 1, 6) + self.tabWidget.addTab(self.tab_15, "") + self.gridLayout_12.addWidget(self.tabWidget, 0, 0, 1, 1) + self.tabWidget_TaxaFuncAnalyzer.addTab(self.tab_diff_stats, "") + self.tab_others_stats = QtWidgets.QWidget() + self.tab_others_stats.setObjectName("tab_others_stats") + self.gridLayout_19 = QtWidgets.QGridLayout(self.tab_others_stats) + self.gridLayout_19.setObjectName("gridLayout_19") + self.tabWidget_2 = QtWidgets.QTabWidget(self.tab_others_stats) + self.tabWidget_2.setEnabled(True) + self.tabWidget_2.setTabShape(QtWidgets.QTabWidget.Triangular) + self.tabWidget_2.setObjectName("tabWidget_2") + self.tab_8 = QtWidgets.QWidget() + self.tab_8.setObjectName("tab_8") + self.gridLayout_4 = QtWidgets.QGridLayout(self.tab_8) + self.gridLayout_4.setObjectName("gridLayout_4") + self.radioButton_tflink_sample = QtWidgets.QRadioButton(self.tab_8) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.radioButton_tflink_sample.sizePolicy().hasHeightForWidth()) + self.radioButton_tflink_sample.setSizePolicy(sizePolicy) + self.radioButton_tflink_sample.setObjectName("radioButton_tflink_sample") + self.gridLayout_4.addWidget(self.radioButton_tflink_sample, 3, 0, 1, 1) + self.label_18 = QtWidgets.QLabel(self.tab_8) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.label_18.sizePolicy().hasHeightForWidth()) + self.label_18.setSizePolicy(sizePolicy) + self.label_18.setObjectName("label_18") + self.gridLayout_4.addWidget(self.label_18, 6, 0, 1, 1) + self.label_19 = QtWidgets.QLabel(self.tab_8) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.label_19.sizePolicy().hasHeightForWidth()) + self.label_19.setSizePolicy(sizePolicy) + self.label_19.setObjectName("label_19") + self.gridLayout_4.addWidget(self.label_19, 7, 0, 1, 1) + self.comboBox_tflink_meta = QtWidgets.QComboBox(self.tab_8) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.comboBox_trends_selection_list.sizePolicy().hasHeightForWidth()) - self.comboBox_trends_selection_list.setSizePolicy(sizePolicy) - self.comboBox_trends_selection_list.setMinimumSize(QtCore.QSize(600, 0)) - self.comboBox_trends_selection_list.setObjectName("comboBox_trends_selection_list") - self.gridLayout_24.addWidget(self.comboBox_trends_selection_list, 3, 1, 1, 5) - self.label_100 = QtWidgets.QLabel(self.tab_15) - self.label_100.setObjectName("label_100") - self.gridLayout_24.addWidget(self.label_100, 3, 0, 1, 1) - self.pushButton_trends_clean_list = QtWidgets.QPushButton(self.tab_15) - self.pushButton_trends_clean_list.setEnabled(False) + sizePolicy.setHeightForWidth(self.comboBox_tflink_meta.sizePolicy().hasHeightForWidth()) + self.comboBox_tflink_meta.setSizePolicy(sizePolicy) + self.comboBox_tflink_meta.setLayoutDirection(QtCore.Qt.LeftToRight) + self.comboBox_tflink_meta.setObjectName("comboBox_tflink_meta") + self.gridLayout_4.addWidget(self.comboBox_tflink_meta, 0, 1, 1, 1) + self.radioButton_tflink_group = QtWidgets.QRadioButton(self.tab_8) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_trends_clean_list.sizePolicy().hasHeightForWidth()) - self.pushButton_trends_clean_list.setSizePolicy(sizePolicy) - self.pushButton_trends_clean_list.setObjectName("pushButton_trends_clean_list") - self.gridLayout_24.addWidget(self.pushButton_trends_clean_list, 8, 0, 1, 1) - self.pushButton_trends_add = QtWidgets.QPushButton(self.tab_15) - self.pushButton_trends_add.setEnabled(False) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHeightForWidth(self.radioButton_tflink_group.sizePolicy().hasHeightForWidth()) + self.radioButton_tflink_group.setSizePolicy(sizePolicy) + self.radioButton_tflink_group.setChecked(True) + self.radioButton_tflink_group.setObjectName("radioButton_tflink_group") + self.gridLayout_4.addWidget(self.radioButton_tflink_group, 2, 0, 1, 1) + self.horizontalLayout_78 = QtWidgets.QHBoxLayout() + self.horizontalLayout_78.setObjectName("horizontalLayout_78") + self.checkBox_tflink_in_condition = QtWidgets.QCheckBox(self.tab_8) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_trends_add.sizePolicy().hasHeightForWidth()) - self.pushButton_trends_add.setSizePolicy(sizePolicy) - self.pushButton_trends_add.setObjectName("pushButton_trends_add") - self.gridLayout_24.addWidget(self.pushButton_trends_add, 3, 6, 1, 2) - self.radioButton_trends_sample = QtWidgets.QRadioButton(self.tab_15) + sizePolicy.setHeightForWidth(self.checkBox_tflink_in_condition.sizePolicy().hasHeightForWidth()) + self.checkBox_tflink_in_condition.setSizePolicy(sizePolicy) + self.checkBox_tflink_in_condition.setLayoutDirection(QtCore.Qt.LeftToRight) + self.checkBox_tflink_in_condition.setObjectName("checkBox_tflink_in_condition") + self.horizontalLayout_78.addWidget(self.checkBox_tflink_in_condition) + self.comboBox_tflink_condition_meta = QtWidgets.QComboBox(self.tab_8) + self.comboBox_tflink_condition_meta.setEnabled(False) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.radioButton_trends_sample.sizePolicy().hasHeightForWidth()) - self.radioButton_trends_sample.setSizePolicy(sizePolicy) - self.radioButton_trends_sample.setObjectName("radioButton_trends_sample") - self.gridLayout_24.addWidget(self.radioButton_trends_sample, 2, 0, 1, 1) - self.verticalLayout_trends_sample = QtWidgets.QVBoxLayout() - self.verticalLayout_trends_sample.setObjectName("verticalLayout_trends_sample") - self.gridLayout_24.addLayout(self.verticalLayout_trends_sample, 2, 1, 1, 7) - self.pushButton_trends_plot_trends = QtWidgets.QPushButton(self.tab_15) - self.pushButton_trends_plot_trends.setEnabled(False) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.MinimumExpanding) + sizePolicy.setHeightForWidth(self.comboBox_tflink_condition_meta.sizePolicy().hasHeightForWidth()) + self.comboBox_tflink_condition_meta.setSizePolicy(sizePolicy) + self.comboBox_tflink_condition_meta.setObjectName("comboBox_tflink_condition_meta") + self.horizontalLayout_78.addWidget(self.comboBox_tflink_condition_meta) + self.horizontalLayout_49 = QtWidgets.QHBoxLayout() + self.horizontalLayout_49.setObjectName("horizontalLayout_49") + self.horizontalLayout_77 = QtWidgets.QHBoxLayout() + self.horizontalLayout_77.setObjectName("horizontalLayout_77") + self.comboBox_tflink_condition_group = QtWidgets.QComboBox(self.tab_8) + self.comboBox_tflink_condition_group.setEnabled(False) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_trends_plot_trends.sizePolicy().hasHeightForWidth()) - self.pushButton_trends_plot_trends.setSizePolicy(sizePolicy) - self.pushButton_trends_plot_trends.setObjectName("pushButton_trends_plot_trends") - self.gridLayout_24.addWidget(self.pushButton_trends_plot_trends, 9, 6, 1, 2) - self.checkBox_trends_plot_interactive_show_legend = QtWidgets.QCheckBox(self.tab_15) - self.checkBox_trends_plot_interactive_show_legend.setObjectName("checkBox_trends_plot_interactive_show_legend") - self.gridLayout_24.addWidget(self.checkBox_trends_plot_interactive_show_legend, 12, 7, 1, 1) - self.label_95 = QtWidgets.QLabel(self.tab_15) - self.label_95.setObjectName("label_95") - self.gridLayout_24.addWidget(self.label_95, 8, 6, 1, 1) - self.spinBox_trends_height = QtWidgets.QSpinBox(self.tab_15) + sizePolicy.setHeightForWidth(self.comboBox_tflink_condition_group.sizePolicy().hasHeightForWidth()) + self.comboBox_tflink_condition_group.setSizePolicy(sizePolicy) + self.comboBox_tflink_condition_group.setMaximumSize(QtCore.QSize(300, 16777215)) + self.comboBox_tflink_condition_group.setObjectName("comboBox_tflink_condition_group") + self.horizontalLayout_77.addWidget(self.comboBox_tflink_condition_group) + self.horizontalLayout_49.addLayout(self.horizontalLayout_77) + self.horizontalLayout_78.addLayout(self.horizontalLayout_49) + self.gridLayout_4.addLayout(self.horizontalLayout_78, 2, 1, 1, 1) + self.label_149 = QtWidgets.QLabel(self.tab_8) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.spinBox_trends_height.sizePolicy().hasHeightForWidth()) - self.spinBox_trends_height.setSizePolicy(sizePolicy) - self.spinBox_trends_height.setMinimum(1) - self.spinBox_trends_height.setMaximum(200) - self.spinBox_trends_height.setProperty("value", 9) - self.spinBox_trends_height.setObjectName("spinBox_trends_height") - self.gridLayout_24.addWidget(self.spinBox_trends_height, 7, 7, 1, 1) - self.spinBox_trends_width = QtWidgets.QSpinBox(self.tab_15) + sizePolicy.setHeightForWidth(self.label_149.sizePolicy().hasHeightForWidth()) + self.label_149.setSizePolicy(sizePolicy) + self.label_149.setObjectName("label_149") + self.gridLayout_4.addWidget(self.label_149, 0, 0, 1, 1) + self.gridLayout_tflink_group = QtWidgets.QGridLayout() + self.gridLayout_tflink_group.setObjectName("gridLayout_tflink_group") + self.gridLayout_4.addLayout(self.gridLayout_tflink_group, 2, 2, 1, 2) + self.gridLayout_tflink_sample = QtWidgets.QGridLayout() + self.gridLayout_tflink_sample.setObjectName("gridLayout_tflink_sample") + self.gridLayout_4.addLayout(self.gridLayout_tflink_sample, 3, 1, 1, 3) + self.line_6 = QtWidgets.QFrame(self.tab_8) + self.line_6.setFrameShape(QtWidgets.QFrame.HLine) + self.line_6.setFrameShadow(QtWidgets.QFrame.Sunken) + self.line_6.setObjectName("line_6") + self.gridLayout_4.addWidget(self.line_6, 4, 0, 1, 4) + self.comboBox_others_func = QtWidgets.QComboBox(self.tab_8) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.spinBox_trends_width.sizePolicy().hasHeightForWidth()) - self.spinBox_trends_width.setSizePolicy(sizePolicy) - self.spinBox_trends_width.setMinimum(1) - self.spinBox_trends_width.setMaximum(200) - self.spinBox_trends_width.setProperty("value", 16) - self.spinBox_trends_width.setObjectName("spinBox_trends_width") - self.gridLayout_24.addWidget(self.spinBox_trends_width, 7, 6, 1, 1) - self.horizontalLayout_46 = QtWidgets.QHBoxLayout() - self.horizontalLayout_46.setObjectName("horizontalLayout_46") - self.label_99 = QtWidgets.QLabel(self.tab_15) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Preferred) + sizePolicy.setHeightForWidth(self.comboBox_others_func.sizePolicy().hasHeightForWidth()) + self.comboBox_others_func.setSizePolicy(sizePolicy) + self.comboBox_others_func.setEditable(True) + self.comboBox_others_func.setObjectName("comboBox_others_func") + self.gridLayout_4.addWidget(self.comboBox_others_func, 6, 1, 1, 2) + self.comboBox_others_taxa = QtWidgets.QComboBox(self.tab_8) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.MinimumExpanding, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.label_99.sizePolicy().hasHeightForWidth()) - self.label_99.setSizePolicy(sizePolicy) - self.label_99.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter) - self.label_99.setObjectName("label_99") - self.horizontalLayout_46.addWidget(self.label_99) - self.spinBox_trends_top_num = QtWidgets.QSpinBox(self.tab_15) + sizePolicy.setHeightForWidth(self.comboBox_others_taxa.sizePolicy().hasHeightForWidth()) + self.comboBox_others_taxa.setSizePolicy(sizePolicy) + self.comboBox_others_taxa.setEditable(True) + self.comboBox_others_taxa.setObjectName("comboBox_others_taxa") + self.gridLayout_4.addWidget(self.comboBox_others_taxa, 7, 1, 1, 2) + self.horizontalLayout_81 = QtWidgets.QHBoxLayout() + self.horizontalLayout_81.setObjectName("horizontalLayout_81") + self.label_others_func_num = QtWidgets.QLabel(self.tab_8) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.spinBox_trends_top_num.sizePolicy().hasHeightForWidth()) - self.spinBox_trends_top_num.setSizePolicy(sizePolicy) - self.spinBox_trends_top_num.setMinimum(1) - self.spinBox_trends_top_num.setMaximum(99999) - self.spinBox_trends_top_num.setProperty("value", 10) - self.spinBox_trends_top_num.setObjectName("spinBox_trends_top_num") - self.horizontalLayout_46.addWidget(self.spinBox_trends_top_num) - self.label_91 = QtWidgets.QLabel(self.tab_15) + sizePolicy.setHeightForWidth(self.label_others_func_num.sizePolicy().hasHeightForWidth()) + self.label_others_func_num.setSizePolicy(sizePolicy) + self.label_others_func_num.setObjectName("label_others_func_num") + self.horizontalLayout_81.addWidget(self.label_others_func_num) + self.pushButton_others_show_linked_taxa = QtWidgets.QPushButton(self.tab_8) + self.pushButton_others_show_linked_taxa.setEnabled(False) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.label_91.sizePolicy().hasHeightForWidth()) - self.label_91.setSizePolicy(sizePolicy) - self.label_91.setObjectName("label_91") - self.horizontalLayout_46.addWidget(self.label_91) - self.comboBox_trends_top_by = QtWidgets.QComboBox(self.tab_15) - self.comboBox_trends_top_by.setObjectName("comboBox_trends_top_by") - self.comboBox_trends_top_by.addItem("") - self.comboBox_trends_top_by.addItem("") - self.comboBox_trends_top_by.addItem("") - self.comboBox_trends_top_by.addItem("") - self.comboBox_trends_top_by.addItem("") - self.comboBox_trends_top_by.addItem("") - self.comboBox_trends_top_by.addItem("") - self.comboBox_trends_top_by.addItem("") - self.comboBox_trends_top_by.addItem("") - self.comboBox_trends_top_by.addItem("") - self.comboBox_trends_top_by.addItem("") - self.horizontalLayout_46.addWidget(self.comboBox_trends_top_by) - self.checkBox_trends_top_filtered = QtWidgets.QCheckBox(self.tab_15) - self.checkBox_trends_top_filtered.setObjectName("checkBox_trends_top_filtered") - self.horizontalLayout_46.addWidget(self.checkBox_trends_top_filtered) - self.gridLayout_24.addLayout(self.horizontalLayout_46, 4, 1, 1, 5) - self.pushButton_trends_add_a_list = QtWidgets.QPushButton(self.tab_15) - self.pushButton_trends_add_a_list.setEnabled(False) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHeightForWidth(self.pushButton_others_show_linked_taxa.sizePolicy().hasHeightForWidth()) + self.pushButton_others_show_linked_taxa.setSizePolicy(sizePolicy) + self.pushButton_others_show_linked_taxa.setObjectName("pushButton_others_show_linked_taxa") + self.horizontalLayout_81.addWidget(self.pushButton_others_show_linked_taxa) + self.gridLayout_4.addLayout(self.horizontalLayout_81, 6, 3, 1, 1) + self.horizontalLayout_82 = QtWidgets.QHBoxLayout() + self.horizontalLayout_82.setObjectName("horizontalLayout_82") + self.label_others_taxa_num = QtWidgets.QLabel(self.tab_8) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_trends_add_a_list.sizePolicy().hasHeightForWidth()) - self.pushButton_trends_add_a_list.setSizePolicy(sizePolicy) - self.pushButton_trends_add_a_list.setObjectName("pushButton_trends_add_a_list") - self.gridLayout_24.addWidget(self.pushButton_trends_add_a_list, 9, 0, 1, 1) - self.comboBox_trends_get_cluster_name = QtWidgets.QComboBox(self.tab_15) - self.comboBox_trends_get_cluster_name.setObjectName("comboBox_trends_get_cluster_name") - self.gridLayout_24.addWidget(self.comboBox_trends_get_cluster_name, 10, 7, 1, 1) - self.label_158 = QtWidgets.QLabel(self.tab_15) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Preferred) + sizePolicy.setHeightForWidth(self.label_others_taxa_num.sizePolicy().hasHeightForWidth()) + self.label_others_taxa_num.setSizePolicy(sizePolicy) + self.label_others_taxa_num.setObjectName("label_others_taxa_num") + self.horizontalLayout_82.addWidget(self.label_others_taxa_num) + self.pushButton_others_show_linked_func = QtWidgets.QPushButton(self.tab_8) + self.pushButton_others_show_linked_func.setEnabled(False) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.label_158.sizePolicy().hasHeightForWidth()) - self.label_158.setSizePolicy(sizePolicy) - self.label_158.setObjectName("label_158") - self.gridLayout_24.addWidget(self.label_158, 5, 6, 1, 1) - self.listWidget_trends_list_for_ploting = QtWidgets.QListWidget(self.tab_15) + sizePolicy.setHeightForWidth(self.pushButton_others_show_linked_func.sizePolicy().hasHeightForWidth()) + self.pushButton_others_show_linked_func.setSizePolicy(sizePolicy) + self.pushButton_others_show_linked_func.setObjectName("pushButton_others_show_linked_func") + self.horizontalLayout_82.addWidget(self.pushButton_others_show_linked_func) + self.gridLayout_4.addLayout(self.horizontalLayout_82, 7, 3, 1, 1) + self.toolBox_8 = QtWidgets.QToolBox(self.tab_8) + self.toolBox_8.setMaximumSize(QtCore.QSize(16777215, 250)) + self.toolBox_8.setObjectName("toolBox_8") + self.page_18 = QtWidgets.QWidget() + self.page_18.setGeometry(QtCore.QRect(0, 0, 888, 196)) + self.page_18.setObjectName("page_18") + self.gridLayout_66 = QtWidgets.QGridLayout(self.page_18) + self.gridLayout_66.setObjectName("gridLayout_66") + self.pushButton_others_plot_heatmap = QtWidgets.QPushButton(self.page_18) + self.pushButton_others_plot_heatmap.setEnabled(False) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.listWidget_trends_list_for_ploting.sizePolicy().hasHeightForWidth()) - self.listWidget_trends_list_for_ploting.setSizePolicy(sizePolicy) - self.listWidget_trends_list_for_ploting.setObjectName("listWidget_trends_list_for_ploting") - self.gridLayout_24.addWidget(self.listWidget_trends_list_for_ploting, 5, 1, 10, 5) - self.spinBox_trends_font_size = QtWidgets.QSpinBox(self.tab_15) - self.spinBox_trends_font_size.setMinimum(1) - self.spinBox_trends_font_size.setProperty("value", 10) - self.spinBox_trends_font_size.setObjectName("spinBox_trends_font_size") - self.gridLayout_24.addWidget(self.spinBox_trends_font_size, 5, 7, 1, 1) - self.label_98 = QtWidgets.QLabel(self.tab_15) - self.label_98.setObjectName("label_98") - self.gridLayout_24.addWidget(self.label_98, 5, 0, 1, 1) - self.verticalLayout_trends_group = QtWidgets.QVBoxLayout() - self.verticalLayout_trends_group.setObjectName("verticalLayout_trends_group") - self.gridLayout_24.addLayout(self.verticalLayout_trends_group, 1, 4, 1, 4) - self.horizontalLayout_45 = QtWidgets.QHBoxLayout() - self.horizontalLayout_45.setObjectName("horizontalLayout_45") - self.checkBox_trends_in_condition = QtWidgets.QCheckBox(self.tab_15) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHeightForWidth(self.pushButton_others_plot_heatmap.sizePolicy().hasHeightForWidth()) + self.pushButton_others_plot_heatmap.setSizePolicy(sizePolicy) + self.pushButton_others_plot_heatmap.setMaximumSize(QtCore.QSize(16777215, 50)) + self.pushButton_others_plot_heatmap.setObjectName("pushButton_others_plot_heatmap") + self.gridLayout_66.addWidget(self.pushButton_others_plot_heatmap, 0, 0, 1, 1) + self.pushButton_others_plot_line = QtWidgets.QPushButton(self.page_18) + self.pushButton_others_plot_line.setEnabled(False) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.checkBox_trends_in_condition.sizePolicy().hasHeightForWidth()) - self.checkBox_trends_in_condition.setSizePolicy(sizePolicy) - self.checkBox_trends_in_condition.setLayoutDirection(QtCore.Qt.LeftToRight) - self.checkBox_trends_in_condition.setObjectName("checkBox_trends_in_condition") - self.horizontalLayout_45.addWidget(self.checkBox_trends_in_condition) - self.comboBox_trends_condition_meta = QtWidgets.QComboBox(self.tab_15) - self.comboBox_trends_condition_meta.setEnabled(False) - self.comboBox_trends_condition_meta.setObjectName("comboBox_trends_condition_meta") - self.horizontalLayout_45.addWidget(self.comboBox_trends_condition_meta) - self.horizontalLayout_76 = QtWidgets.QHBoxLayout() - self.horizontalLayout_76.setObjectName("horizontalLayout_76") - self.comboBox_trends_condition_group = QtWidgets.QComboBox(self.tab_15) - self.comboBox_trends_condition_group.setEnabled(False) + sizePolicy.setHeightForWidth(self.pushButton_others_plot_line.sizePolicy().hasHeightForWidth()) + self.pushButton_others_plot_line.setSizePolicy(sizePolicy) + self.pushButton_others_plot_line.setObjectName("pushButton_others_plot_line") + self.gridLayout_66.addWidget(self.pushButton_others_plot_line, 0, 1, 1, 1) + self.pushButton_others_get_intensity_matrix = QtWidgets.QPushButton(self.page_18) + self.pushButton_others_get_intensity_matrix.setEnabled(False) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.comboBox_trends_condition_group.sizePolicy().hasHeightForWidth()) - self.comboBox_trends_condition_group.setSizePolicy(sizePolicy) - self.comboBox_trends_condition_group.setObjectName("comboBox_trends_condition_group") - self.horizontalLayout_76.addWidget(self.comboBox_trends_condition_group) - self.horizontalLayout_45.addLayout(self.horizontalLayout_76) - self.gridLayout_24.addLayout(self.horizontalLayout_45, 1, 1, 1, 3) - self.tabWidget.addTab(self.tab_15, "") - self.gridLayout_12.addWidget(self.tabWidget, 0, 0, 1, 1) - self.tabWidget_TaxaFuncAnalyzer.addTab(self.tab_diff_stats, "") - self.tab_others_stats = QtWidgets.QWidget() - self.tab_others_stats.setObjectName("tab_others_stats") - self.gridLayout_19 = QtWidgets.QGridLayout(self.tab_others_stats) - self.gridLayout_19.setObjectName("gridLayout_19") - self.tabWidget_2 = QtWidgets.QTabWidget(self.tab_others_stats) - self.tabWidget_2.setEnabled(True) - self.tabWidget_2.setObjectName("tabWidget_2") - self.tab_8 = QtWidgets.QWidget() - self.tab_8.setObjectName("tab_8") - self.gridLayout_4 = QtWidgets.QGridLayout(self.tab_8) - self.gridLayout_4.setObjectName("gridLayout_4") - self.horizontalLayout_54 = QtWidgets.QHBoxLayout() - self.horizontalLayout_54.setObjectName("horizontalLayout_54") - self.label_23 = QtWidgets.QLabel(self.tab_8) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Preferred) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.label_23.sizePolicy().hasHeightForWidth()) - self.label_23.setSizePolicy(sizePolicy) - self.label_23.setLayoutDirection(QtCore.Qt.LeftToRight) - self.label_23.setAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignVCenter) - self.label_23.setObjectName("label_23") - self.horizontalLayout_54.addWidget(self.label_23) - self.comboBox_tflink_hetatmap_scale = QtWidgets.QComboBox(self.tab_8) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHeightForWidth(self.pushButton_others_get_intensity_matrix.sizePolicy().hasHeightForWidth()) + self.pushButton_others_get_intensity_matrix.setSizePolicy(sizePolicy) + self.pushButton_others_get_intensity_matrix.setObjectName("pushButton_others_get_intensity_matrix") + self.gridLayout_66.addWidget(self.pushButton_others_get_intensity_matrix, 1, 1, 1, 1) + self.toolBox_8.addItem(self.page_18, "") + self.page_19 = QtWidgets.QWidget() + self.page_19.setGeometry(QtCore.QRect(0, 0, 538, 127)) + self.page_19.setObjectName("page_19") + self.gridLayout_65 = QtWidgets.QGridLayout(self.page_19) + self.gridLayout_65.setObjectName("gridLayout_65") + self.gridLayout_67 = QtWidgets.QGridLayout() + self.gridLayout_67.setObjectName("gridLayout_67") + self.label_176 = QtWidgets.QLabel(self.page_19) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.comboBox_tflink_hetatmap_scale.sizePolicy().hasHeightForWidth()) - self.comboBox_tflink_hetatmap_scale.setSizePolicy(sizePolicy) - self.comboBox_tflink_hetatmap_scale.setObjectName("comboBox_tflink_hetatmap_scale") - self.comboBox_tflink_hetatmap_scale.addItem("") - self.comboBox_tflink_hetatmap_scale.addItem("") - self.comboBox_tflink_hetatmap_scale.addItem("") - self.horizontalLayout_54.addWidget(self.comboBox_tflink_hetatmap_scale) - self.label_61 = QtWidgets.QLabel(self.tab_8) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Preferred) + sizePolicy.setHeightForWidth(self.label_176.sizePolicy().hasHeightForWidth()) + self.label_176.setSizePolicy(sizePolicy) + font = QtGui.QFont() + font.setBold(True) + font.setWeight(75) + self.label_176.setFont(font) + self.label_176.setObjectName("label_176") + self.gridLayout_67.addWidget(self.label_176, 0, 0, 2, 1) + self.line_29 = QtWidgets.QFrame(self.page_19) + self.line_29.setFrameShape(QtWidgets.QFrame.HLine) + self.line_29.setFrameShadow(QtWidgets.QFrame.Sunken) + self.line_29.setObjectName("line_29") + self.gridLayout_67.addWidget(self.line_29, 2, 1, 1, 4) + self.horizontalLayout_48 = QtWidgets.QHBoxLayout() + self.horizontalLayout_48.setObjectName("horizontalLayout_48") + self.label_61 = QtWidgets.QLabel(self.page_19) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.label_61.sizePolicy().hasHeightForWidth()) self.label_61.setSizePolicy(sizePolicy) self.label_61.setObjectName("label_61") - self.horizontalLayout_54.addWidget(self.label_61) - self.comboBox_tflink_cmap = QtWidgets.QComboBox(self.tab_8) + self.horizontalLayout_48.addWidget(self.label_61) + self.comboBox_tflink_cmap = QtWidgets.QComboBox(self.page_19) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.comboBox_tflink_cmap.sizePolicy().hasHeightForWidth()) self.comboBox_tflink_cmap.setSizePolicy(sizePolicy) self.comboBox_tflink_cmap.setObjectName("comboBox_tflink_cmap") - self.horizontalLayout_54.addWidget(self.comboBox_tflink_cmap) - self.horizontalLayout_51 = QtWidgets.QHBoxLayout() - self.horizontalLayout_51.setObjectName("horizontalLayout_51") - self.label_132 = QtWidgets.QLabel(self.tab_8) - self.label_132.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter) - self.label_132.setObjectName("label_132") - self.horizontalLayout_51.addWidget(self.label_132) - self.checkBox_tflink_bar_show_all_labels_x = QtWidgets.QCheckBox(self.tab_8) - self.checkBox_tflink_bar_show_all_labels_x.setObjectName("checkBox_tflink_bar_show_all_labels_x") - self.horizontalLayout_51.addWidget(self.checkBox_tflink_bar_show_all_labels_x) - self.checkBox_tflink_bar_show_all_labels_y = QtWidgets.QCheckBox(self.tab_8) - self.checkBox_tflink_bar_show_all_labels_y.setObjectName("checkBox_tflink_bar_show_all_labels_y") - self.horizontalLayout_51.addWidget(self.checkBox_tflink_bar_show_all_labels_y) - self.horizontalLayout_54.addLayout(self.horizontalLayout_51) - self.horizontalLayout_52 = QtWidgets.QHBoxLayout() - self.horizontalLayout_52.setObjectName("horizontalLayout_52") - self.label_120 = QtWidgets.QLabel(self.tab_8) + self.horizontalLayout_48.addWidget(self.comboBox_tflink_cmap) + self.gridLayout_67.addLayout(self.horizontalLayout_48, 3, 4, 1, 1) + self.label_177 = QtWidgets.QLabel(self.page_19) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.label_120.sizePolicy().hasHeightForWidth()) - self.label_120.setSizePolicy(sizePolicy) - self.label_120.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter) - self.label_120.setObjectName("label_120") - self.horizontalLayout_52.addWidget(self.label_120) - self.checkBox_tflink_hetatmap_rename_sample = QtWidgets.QCheckBox(self.tab_8) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHeightForWidth(self.label_177.sizePolicy().hasHeightForWidth()) + self.label_177.setSizePolicy(sizePolicy) + font = QtGui.QFont() + font.setBold(True) + font.setWeight(75) + self.label_177.setFont(font) + self.label_177.setObjectName("label_177") + self.gridLayout_67.addWidget(self.label_177, 3, 0, 1, 1) + self.checkBox_tflink_hetatmap_col_cluster = QtWidgets.QCheckBox(self.page_19) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.checkBox_tflink_hetatmap_rename_sample.sizePolicy().hasHeightForWidth()) - self.checkBox_tflink_hetatmap_rename_sample.setSizePolicy(sizePolicy) - self.checkBox_tflink_hetatmap_rename_sample.setChecked(True) - self.checkBox_tflink_hetatmap_rename_sample.setObjectName("checkBox_tflink_hetatmap_rename_sample") - self.horizontalLayout_52.addWidget(self.checkBox_tflink_hetatmap_rename_sample) - self.checkBox_tflink_hetatmap_rename_taxa = QtWidgets.QCheckBox(self.tab_8) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHeightForWidth(self.checkBox_tflink_hetatmap_col_cluster.sizePolicy().hasHeightForWidth()) + self.checkBox_tflink_hetatmap_col_cluster.setSizePolicy(sizePolicy) + self.checkBox_tflink_hetatmap_col_cluster.setLayoutDirection(QtCore.Qt.LeftToRight) + self.checkBox_tflink_hetatmap_col_cluster.setChecked(True) + self.checkBox_tflink_hetatmap_col_cluster.setObjectName("checkBox_tflink_hetatmap_col_cluster") + self.gridLayout_67.addWidget(self.checkBox_tflink_hetatmap_col_cluster, 3, 1, 1, 1) + self.horizontalLayout_47 = QtWidgets.QHBoxLayout() + self.horizontalLayout_47.setObjectName("horizontalLayout_47") + self.label_23 = QtWidgets.QLabel(self.page_19) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.checkBox_tflink_hetatmap_rename_taxa.sizePolicy().hasHeightForWidth()) - self.checkBox_tflink_hetatmap_rename_taxa.setSizePolicy(sizePolicy) - self.checkBox_tflink_hetatmap_rename_taxa.setChecked(True) - self.checkBox_tflink_hetatmap_rename_taxa.setObjectName("checkBox_tflink_hetatmap_rename_taxa") - self.horizontalLayout_52.addWidget(self.checkBox_tflink_hetatmap_rename_taxa) - self.checkBox_tflink_bar_plot_percent = QtWidgets.QCheckBox(self.tab_8) + sizePolicy.setHeightForWidth(self.label_23.sizePolicy().hasHeightForWidth()) + self.label_23.setSizePolicy(sizePolicy) + self.label_23.setLayoutDirection(QtCore.Qt.LeftToRight) + self.label_23.setAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignVCenter) + self.label_23.setObjectName("label_23") + self.horizontalLayout_47.addWidget(self.label_23) + self.comboBox_tflink_hetatmap_scale = QtWidgets.QComboBox(self.page_19) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.comboBox_tflink_hetatmap_scale.sizePolicy().hasHeightForWidth()) + self.comboBox_tflink_hetatmap_scale.setSizePolicy(sizePolicy) + self.comboBox_tflink_hetatmap_scale.setObjectName("comboBox_tflink_hetatmap_scale") + self.comboBox_tflink_hetatmap_scale.addItem("") + self.comboBox_tflink_hetatmap_scale.addItem("") + self.comboBox_tflink_hetatmap_scale.addItem("") + self.horizontalLayout_47.addWidget(self.comboBox_tflink_hetatmap_scale) + self.gridLayout_67.addLayout(self.horizontalLayout_47, 3, 3, 1, 1) + self.checkBox_tflink_bar_plot_percent = QtWidgets.QCheckBox(self.page_19) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) @@ -3239,62 +4109,34 @@ def setupUi(self, metaX_main): self.checkBox_tflink_bar_plot_percent.setFont(font) self.checkBox_tflink_bar_plot_percent.setLayoutDirection(QtCore.Qt.LeftToRight) self.checkBox_tflink_bar_plot_percent.setObjectName("checkBox_tflink_bar_plot_percent") - self.horizontalLayout_52.addWidget(self.checkBox_tflink_bar_plot_percent) - self.horizontalLayout_54.addLayout(self.horizontalLayout_52) - self.gridLayout_4.addLayout(self.horizontalLayout_54, 9, 0, 1, 4) - self.label_18 = QtWidgets.QLabel(self.tab_8) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) + self.gridLayout_67.addWidget(self.checkBox_tflink_bar_plot_percent, 4, 2, 1, 1) + self.checkBox_tflink_plot_mean = QtWidgets.QCheckBox(self.page_19) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.label_18.sizePolicy().hasHeightForWidth()) - self.label_18.setSizePolicy(sizePolicy) - self.label_18.setObjectName("label_18") - self.gridLayout_4.addWidget(self.label_18, 5, 0, 1, 1) + sizePolicy.setHeightForWidth(self.checkBox_tflink_plot_mean.sizePolicy().hasHeightForWidth()) + self.checkBox_tflink_plot_mean.setSizePolicy(sizePolicy) + self.checkBox_tflink_plot_mean.setObjectName("checkBox_tflink_plot_mean") + self.gridLayout_67.addWidget(self.checkBox_tflink_plot_mean, 0, 4, 1, 1) + self.label_178 = QtWidgets.QLabel(self.page_19) + font = QtGui.QFont() + font.setBold(True) + font.setWeight(75) + self.label_178.setFont(font) + self.label_178.setObjectName("label_178") + self.gridLayout_67.addWidget(self.label_178, 4, 0, 1, 1) self.horizontalLayout_53 = QtWidgets.QHBoxLayout() self.horizontalLayout_53.setObjectName("horizontalLayout_53") - self.label_21 = QtWidgets.QLabel(self.tab_8) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.label_21.sizePolicy().hasHeightForWidth()) - self.label_21.setSizePolicy(sizePolicy) - self.label_21.setObjectName("label_21") - self.horizontalLayout_53.addWidget(self.label_21) - self.spinBox_tflink_width = QtWidgets.QSpinBox(self.tab_8) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.spinBox_tflink_width.sizePolicy().hasHeightForWidth()) - self.spinBox_tflink_width.setSizePolicy(sizePolicy) - self.spinBox_tflink_width.setMinimum(1) - self.spinBox_tflink_width.setMaximum(1000) - self.spinBox_tflink_width.setProperty("value", 16) - self.spinBox_tflink_width.setObjectName("spinBox_tflink_width") - self.horizontalLayout_53.addWidget(self.spinBox_tflink_width) - self.label_20 = QtWidgets.QLabel(self.tab_8) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.label_20.sizePolicy().hasHeightForWidth()) - self.label_20.setSizePolicy(sizePolicy) - self.label_20.setObjectName("label_20") - self.horizontalLayout_53.addWidget(self.label_20) - self.spinBox_tflink_height = QtWidgets.QSpinBox(self.tab_8) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) + self.label_110 = QtWidgets.QLabel(self.page_19) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.spinBox_tflink_height.sizePolicy().hasHeightForWidth()) - self.spinBox_tflink_height.setSizePolicy(sizePolicy) - self.spinBox_tflink_height.setMinimum(1) - self.spinBox_tflink_height.setMaximum(1000) - self.spinBox_tflink_height.setProperty("value", 9) - self.spinBox_tflink_height.setObjectName("spinBox_tflink_height") - self.horizontalLayout_53.addWidget(self.spinBox_tflink_height) - self.label_110 = QtWidgets.QLabel(self.tab_8) - self.label_110.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter) + sizePolicy.setHeightForWidth(self.label_110.sizePolicy().hasHeightForWidth()) + self.label_110.setSizePolicy(sizePolicy) + self.label_110.setAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignVCenter) self.label_110.setObjectName("label_110") self.horizontalLayout_53.addWidget(self.label_110) - self.spinBox_tflink_label_font_size = QtWidgets.QSpinBox(self.tab_8) + self.spinBox_tflink_label_font_size = QtWidgets.QSpinBox(self.page_19) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) @@ -3305,26 +4147,8 @@ def setupUi(self, metaX_main): self.spinBox_tflink_label_font_size.setProperty("value", 10) self.spinBox_tflink_label_font_size.setObjectName("spinBox_tflink_label_font_size") self.horizontalLayout_53.addWidget(self.spinBox_tflink_label_font_size) - self.checkBox_tflink_hetatmap_col_cluster = QtWidgets.QCheckBox(self.tab_8) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.checkBox_tflink_hetatmap_col_cluster.sizePolicy().hasHeightForWidth()) - self.checkBox_tflink_hetatmap_col_cluster.setSizePolicy(sizePolicy) - self.checkBox_tflink_hetatmap_col_cluster.setLayoutDirection(QtCore.Qt.LeftToRight) - self.checkBox_tflink_hetatmap_col_cluster.setChecked(True) - self.checkBox_tflink_hetatmap_col_cluster.setObjectName("checkBox_tflink_hetatmap_col_cluster") - self.horizontalLayout_53.addWidget(self.checkBox_tflink_hetatmap_col_cluster) - self.checkBox_tflink_hetatmap_row_cluster = QtWidgets.QCheckBox(self.tab_8) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.checkBox_tflink_hetatmap_row_cluster.sizePolicy().hasHeightForWidth()) - self.checkBox_tflink_hetatmap_row_cluster.setSizePolicy(sizePolicy) - self.checkBox_tflink_hetatmap_row_cluster.setChecked(True) - self.checkBox_tflink_hetatmap_row_cluster.setObjectName("checkBox_tflink_hetatmap_row_cluster") - self.horizontalLayout_53.addWidget(self.checkBox_tflink_hetatmap_row_cluster) - self.checkBox_tflink_bar_show_legend = QtWidgets.QCheckBox(self.tab_8) + self.gridLayout_67.addLayout(self.horizontalLayout_53, 0, 3, 1, 1) + self.checkBox_tflink_bar_show_legend = QtWidgets.QCheckBox(self.page_19) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) @@ -3332,124 +4156,123 @@ def setupUi(self, metaX_main): self.checkBox_tflink_bar_show_legend.setSizePolicy(sizePolicy) self.checkBox_tflink_bar_show_legend.setChecked(True) self.checkBox_tflink_bar_show_legend.setObjectName("checkBox_tflink_bar_show_legend") - self.horizontalLayout_53.addWidget(self.checkBox_tflink_bar_show_legend) - self.checkBox_tflink_plot_mean = QtWidgets.QCheckBox(self.tab_8) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.checkBox_tflink_plot_mean.sizePolicy().hasHeightForWidth()) - self.checkBox_tflink_plot_mean.setSizePolicy(sizePolicy) - self.checkBox_tflink_plot_mean.setObjectName("checkBox_tflink_plot_mean") - self.horizontalLayout_53.addWidget(self.checkBox_tflink_plot_mean) - self.gridLayout_4.addLayout(self.horizontalLayout_53, 8, 0, 1, 4) - self.label_149 = QtWidgets.QLabel(self.tab_8) + self.gridLayout_67.addWidget(self.checkBox_tflink_bar_show_legend, 4, 1, 1, 1) + self.checkBox_tflink_hetatmap_row_cluster = QtWidgets.QCheckBox(self.page_19) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.label_149.sizePolicy().hasHeightForWidth()) - self.label_149.setSizePolicy(sizePolicy) - self.label_149.setObjectName("label_149") - self.gridLayout_4.addWidget(self.label_149, 0, 0, 1, 1) - self.comboBox_tflink_meta = QtWidgets.QComboBox(self.tab_8) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Preferred) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.comboBox_tflink_meta.sizePolicy().hasHeightForWidth()) - self.comboBox_tflink_meta.setSizePolicy(sizePolicy) - self.comboBox_tflink_meta.setLayoutDirection(QtCore.Qt.LeftToRight) - self.comboBox_tflink_meta.setObjectName("comboBox_tflink_meta") - self.gridLayout_4.addWidget(self.comboBox_tflink_meta, 0, 1, 1, 1) - self.horizontalLayout_78 = QtWidgets.QHBoxLayout() - self.horizontalLayout_78.setObjectName("horizontalLayout_78") - self.checkBox_tflink_in_condition = QtWidgets.QCheckBox(self.tab_8) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.checkBox_tflink_in_condition.sizePolicy().hasHeightForWidth()) - self.checkBox_tflink_in_condition.setSizePolicy(sizePolicy) - self.checkBox_tflink_in_condition.setLayoutDirection(QtCore.Qt.LeftToRight) - self.checkBox_tflink_in_condition.setObjectName("checkBox_tflink_in_condition") - self.horizontalLayout_78.addWidget(self.checkBox_tflink_in_condition) - self.comboBox_tflink_condition_meta = QtWidgets.QComboBox(self.tab_8) - self.comboBox_tflink_condition_meta.setEnabled(False) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHeightForWidth(self.checkBox_tflink_hetatmap_row_cluster.sizePolicy().hasHeightForWidth()) + self.checkBox_tflink_hetatmap_row_cluster.setSizePolicy(sizePolicy) + self.checkBox_tflink_hetatmap_row_cluster.setChecked(True) + self.checkBox_tflink_hetatmap_row_cluster.setObjectName("checkBox_tflink_hetatmap_row_cluster") + self.gridLayout_67.addWidget(self.checkBox_tflink_hetatmap_row_cluster, 3, 2, 1, 1) + self.horizontalLayout_31 = QtWidgets.QHBoxLayout() + self.horizontalLayout_31.setObjectName("horizontalLayout_31") + self.label_21 = QtWidgets.QLabel(self.page_19) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.comboBox_tflink_condition_meta.sizePolicy().hasHeightForWidth()) - self.comboBox_tflink_condition_meta.setSizePolicy(sizePolicy) - self.comboBox_tflink_condition_meta.setObjectName("comboBox_tflink_condition_meta") - self.horizontalLayout_78.addWidget(self.comboBox_tflink_condition_meta) - self.horizontalLayout_49 = QtWidgets.QHBoxLayout() - self.horizontalLayout_49.setObjectName("horizontalLayout_49") - self.horizontalLayout_77 = QtWidgets.QHBoxLayout() - self.horizontalLayout_77.setObjectName("horizontalLayout_77") - self.comboBox_tflink_condition_group = QtWidgets.QComboBox(self.tab_8) - self.comboBox_tflink_condition_group.setEnabled(False) + sizePolicy.setHeightForWidth(self.label_21.sizePolicy().hasHeightForWidth()) + self.label_21.setSizePolicy(sizePolicy) + self.label_21.setObjectName("label_21") + self.horizontalLayout_31.addWidget(self.label_21) + self.spinBox_tflink_width = QtWidgets.QSpinBox(self.page_19) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.comboBox_tflink_condition_group.sizePolicy().hasHeightForWidth()) - self.comboBox_tflink_condition_group.setSizePolicy(sizePolicy) - self.comboBox_tflink_condition_group.setObjectName("comboBox_tflink_condition_group") - self.horizontalLayout_77.addWidget(self.comboBox_tflink_condition_group) - self.horizontalLayout_49.addLayout(self.horizontalLayout_77) - self.horizontalLayout_78.addLayout(self.horizontalLayout_49) - self.gridLayout_4.addLayout(self.horizontalLayout_78, 1, 1, 1, 1) - self.radioButton_tflink_sample = QtWidgets.QRadioButton(self.tab_8) + sizePolicy.setHeightForWidth(self.spinBox_tflink_width.sizePolicy().hasHeightForWidth()) + self.spinBox_tflink_width.setSizePolicy(sizePolicy) + self.spinBox_tflink_width.setMinimum(1) + self.spinBox_tflink_width.setMaximum(1000) + self.spinBox_tflink_width.setProperty("value", 16) + self.spinBox_tflink_width.setObjectName("spinBox_tflink_width") + self.horizontalLayout_31.addWidget(self.spinBox_tflink_width) + self.label_20 = QtWidgets.QLabel(self.page_19) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.radioButton_tflink_sample.sizePolicy().hasHeightForWidth()) - self.radioButton_tflink_sample.setSizePolicy(sizePolicy) - self.radioButton_tflink_sample.setObjectName("radioButton_tflink_sample") - self.gridLayout_4.addWidget(self.radioButton_tflink_sample, 2, 0, 1, 1) - self.verticalLayout_4 = QtWidgets.QVBoxLayout() - self.verticalLayout_4.setObjectName("verticalLayout_4") - self.pushButton_others_get_intensity_matrix = QtWidgets.QPushButton(self.tab_8) - self.pushButton_others_get_intensity_matrix.setEnabled(False) + sizePolicy.setHeightForWidth(self.label_20.sizePolicy().hasHeightForWidth()) + self.label_20.setSizePolicy(sizePolicy) + self.label_20.setObjectName("label_20") + self.horizontalLayout_31.addWidget(self.label_20) + self.spinBox_tflink_height = QtWidgets.QSpinBox(self.page_19) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_others_get_intensity_matrix.sizePolicy().hasHeightForWidth()) - self.pushButton_others_get_intensity_matrix.setSizePolicy(sizePolicy) - self.pushButton_others_get_intensity_matrix.setObjectName("pushButton_others_get_intensity_matrix") - self.verticalLayout_4.addWidget(self.pushButton_others_get_intensity_matrix) - self.pushButton_others_plot_heatmap = QtWidgets.QPushButton(self.tab_8) - self.pushButton_others_plot_heatmap.setEnabled(False) + sizePolicy.setHeightForWidth(self.spinBox_tflink_height.sizePolicy().hasHeightForWidth()) + self.spinBox_tflink_height.setSizePolicy(sizePolicy) + self.spinBox_tflink_height.setMinimum(1) + self.spinBox_tflink_height.setMaximum(1000) + self.spinBox_tflink_height.setProperty("value", 9) + self.spinBox_tflink_height.setObjectName("spinBox_tflink_height") + self.horizontalLayout_31.addWidget(self.spinBox_tflink_height) + self.gridLayout_67.addLayout(self.horizontalLayout_31, 0, 1, 1, 2) + self.horizontalLayout_52 = QtWidgets.QHBoxLayout() + self.horizontalLayout_52.setObjectName("horizontalLayout_52") + self.label_120 = QtWidgets.QLabel(self.page_19) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_others_plot_heatmap.sizePolicy().hasHeightForWidth()) - self.pushButton_others_plot_heatmap.setSizePolicy(sizePolicy) - self.pushButton_others_plot_heatmap.setObjectName("pushButton_others_plot_heatmap") - self.verticalLayout_4.addWidget(self.pushButton_others_plot_heatmap) - self.pushButton_others_plot_line = QtWidgets.QPushButton(self.tab_8) - self.pushButton_others_plot_line.setEnabled(False) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Preferred) + sizePolicy.setHeightForWidth(self.label_120.sizePolicy().hasHeightForWidth()) + self.label_120.setSizePolicy(sizePolicy) + self.label_120.setAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignVCenter) + self.label_120.setObjectName("label_120") + self.horizontalLayout_52.addWidget(self.label_120) + self.checkBox_tflink_hetatmap_rename_sample = QtWidgets.QCheckBox(self.page_19) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_others_plot_line.sizePolicy().hasHeightForWidth()) - self.pushButton_others_plot_line.setSizePolicy(sizePolicy) - self.pushButton_others_plot_line.setObjectName("pushButton_others_plot_line") - self.verticalLayout_4.addWidget(self.pushButton_others_plot_line) - self.gridLayout_4.addLayout(self.verticalLayout_4, 8, 4, 2, 1) - self.label_19 = QtWidgets.QLabel(self.tab_8) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHeightForWidth(self.checkBox_tflink_hetatmap_rename_sample.sizePolicy().hasHeightForWidth()) + self.checkBox_tflink_hetatmap_rename_sample.setSizePolicy(sizePolicy) + self.checkBox_tflink_hetatmap_rename_sample.setChecked(True) + self.checkBox_tflink_hetatmap_rename_sample.setObjectName("checkBox_tflink_hetatmap_rename_sample") + self.horizontalLayout_52.addWidget(self.checkBox_tflink_hetatmap_rename_sample) + self.checkBox_tflink_hetatmap_rename_taxa = QtWidgets.QCheckBox(self.page_19) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.label_19.sizePolicy().hasHeightForWidth()) - self.label_19.setSizePolicy(sizePolicy) - self.label_19.setObjectName("label_19") - self.gridLayout_4.addWidget(self.label_19, 6, 0, 1, 1) - self.radioButton_tflink_group = QtWidgets.QRadioButton(self.tab_8) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHeightForWidth(self.checkBox_tflink_hetatmap_rename_taxa.sizePolicy().hasHeightForWidth()) + self.checkBox_tflink_hetatmap_rename_taxa.setSizePolicy(sizePolicy) + self.checkBox_tflink_hetatmap_rename_taxa.setChecked(True) + self.checkBox_tflink_hetatmap_rename_taxa.setObjectName("checkBox_tflink_hetatmap_rename_taxa") + self.horizontalLayout_52.addWidget(self.checkBox_tflink_hetatmap_rename_taxa) + self.gridLayout_67.addLayout(self.horizontalLayout_52, 1, 3, 1, 1) + self.horizontalLayout_51 = QtWidgets.QHBoxLayout() + self.horizontalLayout_51.setObjectName("horizontalLayout_51") + self.label_132 = QtWidgets.QLabel(self.page_19) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Maximum) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.radioButton_tflink_group.sizePolicy().hasHeightForWidth()) - self.radioButton_tflink_group.setSizePolicy(sizePolicy) - self.radioButton_tflink_group.setChecked(True) - self.radioButton_tflink_group.setObjectName("radioButton_tflink_group") - self.gridLayout_4.addWidget(self.radioButton_tflink_group, 1, 0, 1, 1) + sizePolicy.setHeightForWidth(self.label_132.sizePolicy().hasHeightForWidth()) + self.label_132.setSizePolicy(sizePolicy) + self.label_132.setAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignVCenter) + self.label_132.setObjectName("label_132") + self.horizontalLayout_51.addWidget(self.label_132) + self.checkBox_tflink_bar_show_all_labels_x = QtWidgets.QCheckBox(self.page_19) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.checkBox_tflink_bar_show_all_labels_x.sizePolicy().hasHeightForWidth()) + self.checkBox_tflink_bar_show_all_labels_x.setSizePolicy(sizePolicy) + self.checkBox_tflink_bar_show_all_labels_x.setObjectName("checkBox_tflink_bar_show_all_labels_x") + self.horizontalLayout_51.addWidget(self.checkBox_tflink_bar_show_all_labels_x) + self.checkBox_tflink_bar_show_all_labels_y = QtWidgets.QCheckBox(self.page_19) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.checkBox_tflink_bar_show_all_labels_y.sizePolicy().hasHeightForWidth()) + self.checkBox_tflink_bar_show_all_labels_y.setSizePolicy(sizePolicy) + self.checkBox_tflink_bar_show_all_labels_y.setObjectName("checkBox_tflink_bar_show_all_labels_y") + self.horizontalLayout_51.addWidget(self.checkBox_tflink_bar_show_all_labels_y) + self.gridLayout_67.addLayout(self.horizontalLayout_51, 1, 1, 1, 2) + self.gridLayout_65.addLayout(self.gridLayout_67, 2, 2, 1, 1) + self.toolBox_8.addItem(self.page_19, "") + self.gridLayout_4.addWidget(self.toolBox_8, 8, 0, 1, 4) + self.line_3 = QtWidgets.QFrame(self.tab_8) + self.line_3.setFrameShape(QtWidgets.QFrame.HLine) + self.line_3.setFrameShadow(QtWidgets.QFrame.Sunken) + self.line_3.setObjectName("line_3") + self.gridLayout_4.addWidget(self.line_3, 1, 0, 1, 4) self.horizontalLayout_50 = QtWidgets.QHBoxLayout() self.horizontalLayout_50.setObjectName("horizontalLayout_50") self.label_75 = QtWidgets.QLabel(self.tab_8) @@ -3506,108 +4329,34 @@ def setupUi(self, metaX_main): self.pushButton_tflink_filter.setSizePolicy(sizePolicy) self.pushButton_tflink_filter.setObjectName("pushButton_tflink_filter") self.horizontalLayout_50.addWidget(self.pushButton_tflink_filter) + self.gridLayout_4.addLayout(self.horizontalLayout_50, 5, 1, 1, 2) self.pushButton_others_fresh_taxa_func = QtWidgets.QPushButton(self.tab_8) self.pushButton_others_fresh_taxa_func.setEnabled(False) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.pushButton_others_fresh_taxa_func.sizePolicy().hasHeightForWidth()) self.pushButton_others_fresh_taxa_func.setSizePolicy(sizePolicy) self.pushButton_others_fresh_taxa_func.setObjectName("pushButton_others_fresh_taxa_func") - self.horizontalLayout_50.addWidget(self.pushButton_others_fresh_taxa_func) - self.gridLayout_4.addLayout(self.horizontalLayout_50, 4, 0, 1, 5) - self.horizontalLayout_81 = QtWidgets.QHBoxLayout() - self.horizontalLayout_81.setObjectName("horizontalLayout_81") - self.label_others_func_num = QtWidgets.QLabel(self.tab_8) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.label_others_func_num.sizePolicy().hasHeightForWidth()) - self.label_others_func_num.setSizePolicy(sizePolicy) - self.label_others_func_num.setObjectName("label_others_func_num") - self.horizontalLayout_81.addWidget(self.label_others_func_num) - self.pushButton_others_show_linked_taxa = QtWidgets.QPushButton(self.tab_8) - self.pushButton_others_show_linked_taxa.setEnabled(False) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_others_show_linked_taxa.sizePolicy().hasHeightForWidth()) - self.pushButton_others_show_linked_taxa.setSizePolicy(sizePolicy) - self.pushButton_others_show_linked_taxa.setObjectName("pushButton_others_show_linked_taxa") - self.horizontalLayout_81.addWidget(self.pushButton_others_show_linked_taxa) - self.gridLayout_4.addLayout(self.horizontalLayout_81, 5, 4, 1, 1) - self.horizontalLayout_82 = QtWidgets.QHBoxLayout() - self.horizontalLayout_82.setObjectName("horizontalLayout_82") - self.label_others_taxa_num = QtWidgets.QLabel(self.tab_8) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Preferred) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.label_others_taxa_num.sizePolicy().hasHeightForWidth()) - self.label_others_taxa_num.setSizePolicy(sizePolicy) - self.label_others_taxa_num.setObjectName("label_others_taxa_num") - self.horizontalLayout_82.addWidget(self.label_others_taxa_num) - self.pushButton_others_show_linked_func = QtWidgets.QPushButton(self.tab_8) - self.pushButton_others_show_linked_func.setEnabled(False) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_others_show_linked_func.sizePolicy().hasHeightForWidth()) - self.pushButton_others_show_linked_func.setSizePolicy(sizePolicy) - self.pushButton_others_show_linked_func.setObjectName("pushButton_others_show_linked_func") - self.horizontalLayout_82.addWidget(self.pushButton_others_show_linked_func) - self.gridLayout_4.addLayout(self.horizontalLayout_82, 6, 4, 1, 1) - self.comboBox_others_func = QtWidgets.QComboBox(self.tab_8) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.comboBox_others_func.sizePolicy().hasHeightForWidth()) - self.comboBox_others_func.setSizePolicy(sizePolicy) - self.comboBox_others_func.setEditable(True) - self.comboBox_others_func.setObjectName("comboBox_others_func") - self.gridLayout_4.addWidget(self.comboBox_others_func, 5, 1, 1, 3) - self.comboBox_others_taxa = QtWidgets.QComboBox(self.tab_8) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.MinimumExpanding, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.comboBox_others_taxa.sizePolicy().hasHeightForWidth()) - self.comboBox_others_taxa.setSizePolicy(sizePolicy) - self.comboBox_others_taxa.setEditable(True) - self.comboBox_others_taxa.setObjectName("comboBox_others_taxa") - self.gridLayout_4.addWidget(self.comboBox_others_taxa, 6, 1, 1, 3) - self.gridLayout_tflink_sample = QtWidgets.QGridLayout() - self.gridLayout_tflink_sample.setObjectName("gridLayout_tflink_sample") - self.gridLayout_4.addLayout(self.gridLayout_tflink_sample, 2, 1, 1, 4) - self.gridLayout_tflink_group = QtWidgets.QGridLayout() - self.gridLayout_tflink_group.setObjectName("gridLayout_tflink_group") - self.gridLayout_4.addLayout(self.gridLayout_tflink_group, 1, 2, 1, 3) - self.line_6 = QtWidgets.QFrame(self.tab_8) - self.line_6.setFrameShape(QtWidgets.QFrame.HLine) - self.line_6.setFrameShadow(QtWidgets.QFrame.Sunken) - self.line_6.setObjectName("line_6") - self.gridLayout_4.addWidget(self.line_6, 3, 0, 1, 5) - self.line_3 = QtWidgets.QFrame(self.tab_8) - self.line_3.setFrameShape(QtWidgets.QFrame.HLine) - self.line_3.setFrameShadow(QtWidgets.QFrame.Sunken) - self.line_3.setObjectName("line_3") - self.gridLayout_4.addWidget(self.line_3, 7, 0, 1, 5) + self.gridLayout_4.addWidget(self.pushButton_others_fresh_taxa_func, 5, 3, 1, 1) self.tabWidget_2.addTab(self.tab_8, "") self.tab_9 = QtWidgets.QWidget() self.tab_9.setObjectName("tab_9") self.gridLayout_6 = QtWidgets.QGridLayout(self.tab_9) self.gridLayout_6.setObjectName("gridLayout_6") - self.pushButton_tfnet_drop_item = QtWidgets.QPushButton(self.tab_9) - self.pushButton_tfnet_drop_item.setEnabled(False) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) + self.gridLayout_network_group = QtWidgets.QGridLayout() + self.gridLayout_network_group.setObjectName("gridLayout_network_group") + self.gridLayout_6.addLayout(self.gridLayout_network_group, 2, 2, 1, 1) + self.pushButton_tfnet_add_to_list = QtWidgets.QPushButton(self.tab_9) + self.pushButton_tfnet_add_to_list.setEnabled(False) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_tfnet_drop_item.sizePolicy().hasHeightForWidth()) - self.pushButton_tfnet_drop_item.setSizePolicy(sizePolicy) - self.pushButton_tfnet_drop_item.setObjectName("pushButton_tfnet_drop_item") - self.gridLayout_6.addWidget(self.pushButton_tfnet_drop_item, 10, 0, 1, 1) - self.pushButton_tfnet_add_top = QtWidgets.QPushButton(self.tab_9) - self.pushButton_tfnet_add_top.setEnabled(False) - self.pushButton_tfnet_add_top.setObjectName("pushButton_tfnet_add_top") - self.gridLayout_6.addWidget(self.pushButton_tfnet_add_top, 7, 3, 1, 1) + sizePolicy.setHeightForWidth(self.pushButton_tfnet_add_to_list.sizePolicy().hasHeightForWidth()) + self.pushButton_tfnet_add_to_list.setSizePolicy(sizePolicy) + self.pushButton_tfnet_add_to_list.setMaximumSize(QtCore.QSize(100, 16777215)) + self.pushButton_tfnet_add_to_list.setObjectName("pushButton_tfnet_add_to_list") + self.gridLayout_6.addWidget(self.pushButton_tfnet_add_to_list, 6, 2, 1, 1) self.radioButton_network_bysample = QtWidgets.QRadioButton(self.tab_9) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) @@ -3615,77 +4364,46 @@ def setupUi(self, metaX_main): sizePolicy.setHeightForWidth(self.radioButton_network_bysample.sizePolicy().hasHeightForWidth()) self.radioButton_network_bysample.setSizePolicy(sizePolicy) self.radioButton_network_bysample.setObjectName("radioButton_network_bysample") - self.gridLayout_6.addWidget(self.radioButton_network_bysample, 3, 0, 1, 1) - self.listWidget_tfnet_focus_list = QtWidgets.QListWidget(self.tab_9) - self.listWidget_tfnet_focus_list.setObjectName("listWidget_tfnet_focus_list") - self.gridLayout_6.addWidget(self.listWidget_tfnet_focus_list, 8, 1, 9, 2) - self.radioButton_network_bygroup = QtWidgets.QRadioButton(self.tab_9) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.radioButton_network_bygroup.sizePolicy().hasHeightForWidth()) - self.radioButton_network_bygroup.setSizePolicy(sizePolicy) - self.radioButton_network_bygroup.setChecked(True) - self.radioButton_network_bygroup.setObjectName("radioButton_network_bygroup") - self.gridLayout_6.addWidget(self.radioButton_network_bygroup, 1, 0, 1, 1) - self.horizontalLayout_57 = QtWidgets.QHBoxLayout() - self.horizontalLayout_57.setObjectName("horizontalLayout_57") - self.checkBox_tf_link_net_show_label = QtWidgets.QCheckBox(self.tab_9) - self.checkBox_tf_link_net_show_label.setObjectName("checkBox_tf_link_net_show_label") - self.horizontalLayout_57.addWidget(self.checkBox_tf_link_net_show_label) - self.checkBox_tf_link_net_rename_taxa = QtWidgets.QCheckBox(self.tab_9) - self.checkBox_tf_link_net_rename_taxa.setEnabled(True) - self.checkBox_tf_link_net_rename_taxa.setChecked(True) - self.checkBox_tf_link_net_rename_taxa.setObjectName("checkBox_tf_link_net_rename_taxa") - self.horizontalLayout_57.addWidget(self.checkBox_tf_link_net_rename_taxa) - self.gridLayout_6.addLayout(self.horizontalLayout_57, 10, 3, 1, 1) - self.gridLayout_network_sample = QtWidgets.QGridLayout() - self.gridLayout_network_sample.setObjectName("gridLayout_network_sample") - self.gridLayout_6.addLayout(self.gridLayout_network_sample, 3, 1, 1, 3) - self.pushButton_tfnet_clean_list = QtWidgets.QPushButton(self.tab_9) - self.pushButton_tfnet_clean_list.setEnabled(False) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Fixed) + self.gridLayout_6.addWidget(self.radioButton_network_bysample, 4, 0, 1, 1) + self.pushButton_tfnet_add_top = QtWidgets.QPushButton(self.tab_9) + self.pushButton_tfnet_add_top.setEnabled(False) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_tfnet_clean_list.sizePolicy().hasHeightForWidth()) - self.pushButton_tfnet_clean_list.setSizePolicy(sizePolicy) - self.pushButton_tfnet_clean_list.setObjectName("pushButton_tfnet_clean_list") - self.gridLayout_6.addWidget(self.pushButton_tfnet_clean_list, 13, 0, 1, 1) - self.gridLayout_network_group = QtWidgets.QGridLayout() - self.gridLayout_network_group.setObjectName("gridLayout_network_group") - self.gridLayout_6.addLayout(self.gridLayout_network_group, 1, 2, 1, 2) - self.horizontalLayout_9 = QtWidgets.QHBoxLayout() - self.horizontalLayout_9.setObjectName("horizontalLayout_9") - self.label_49 = QtWidgets.QLabel(self.tab_9) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Preferred) + sizePolicy.setHeightForWidth(self.pushButton_tfnet_add_top.sizePolicy().hasHeightForWidth()) + self.pushButton_tfnet_add_top.setSizePolicy(sizePolicy) + self.pushButton_tfnet_add_top.setMaximumSize(QtCore.QSize(100, 16777215)) + self.pushButton_tfnet_add_top.setObjectName("pushButton_tfnet_add_top") + self.gridLayout_6.addWidget(self.pushButton_tfnet_add_top, 7, 2, 1, 1) + self.toolBox_7 = QtWidgets.QToolBox(self.tab_9) + self.toolBox_7.setMinimumSize(QtCore.QSize(0, 150)) + self.toolBox_7.setMaximumSize(QtCore.QSize(16777215, 210)) + self.toolBox_7.setObjectName("toolBox_7") + self.page_16 = QtWidgets.QWidget() + self.page_16.setGeometry(QtCore.QRect(0, 0, 98, 41)) + self.page_16.setObjectName("page_16") + self.gridLayout_63 = QtWidgets.QGridLayout(self.page_16) + self.gridLayout_63.setObjectName("gridLayout_63") + self.pushButton_plot_network = QtWidgets.QPushButton(self.page_16) + self.pushButton_plot_network.setEnabled(False) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.label_49.sizePolicy().hasHeightForWidth()) - self.label_49.setSizePolicy(sizePolicy) - self.label_49.setObjectName("label_49") - self.horizontalLayout_9.addWidget(self.label_49) - self.comboBox_tfnet_table = QtWidgets.QComboBox(self.tab_9) - self.comboBox_tfnet_table.setEnabled(False) - self.comboBox_tfnet_table.setObjectName("comboBox_tfnet_table") - self.comboBox_tfnet_table.addItem("") - self.comboBox_tfnet_table.addItem("") - self.comboBox_tfnet_table.addItem("") - self.horizontalLayout_9.addWidget(self.comboBox_tfnet_table) - self.label_150 = QtWidgets.QLabel(self.tab_9) - self.label_150.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter) - self.label_150.setObjectName("label_150") - self.horizontalLayout_9.addWidget(self.label_150) - self.comboBox_network_meta = QtWidgets.QComboBox(self.tab_9) - self.comboBox_network_meta.setObjectName("comboBox_network_meta") - self.horizontalLayout_9.addWidget(self.comboBox_network_meta) - self.gridLayout_6.addLayout(self.horizontalLayout_9, 0, 0, 1, 2) - self.pushButton_tfnet_add_to_list = QtWidgets.QPushButton(self.tab_9) - self.pushButton_tfnet_add_to_list.setEnabled(False) - self.pushButton_tfnet_add_to_list.setObjectName("pushButton_tfnet_add_to_list") - self.gridLayout_6.addWidget(self.pushButton_tfnet_add_to_list, 4, 3, 1, 1) + sizePolicy.setHeightForWidth(self.pushButton_plot_network.sizePolicy().hasHeightForWidth()) + self.pushButton_plot_network.setSizePolicy(sizePolicy) + self.pushButton_plot_network.setMaximumSize(QtCore.QSize(16777215, 50)) + self.pushButton_plot_network.setCheckable(False) + self.pushButton_plot_network.setObjectName("pushButton_plot_network") + self.gridLayout_63.addWidget(self.pushButton_plot_network, 0, 0, 1, 1) + self.toolBox_7.addItem(self.page_16, "") + self.page_17 = QtWidgets.QWidget() + self.page_17.setGeometry(QtCore.QRect(0, 0, 383, 68)) + self.page_17.setObjectName("page_17") + self.gridLayout_64 = QtWidgets.QGridLayout(self.page_17) + self.gridLayout_64.setObjectName("gridLayout_64") self.horizontalLayout_56 = QtWidgets.QHBoxLayout() self.horizontalLayout_56.setObjectName("horizontalLayout_56") - self.label_50 = QtWidgets.QLabel(self.tab_9) + self.label_50 = QtWidgets.QLabel(self.page_17) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) @@ -3693,8 +4411,8 @@ def setupUi(self, metaX_main): self.label_50.setSizePolicy(sizePolicy) self.label_50.setObjectName("label_50") self.horizontalLayout_56.addWidget(self.label_50) - self.spinBox_network_width = QtWidgets.QSpinBox(self.tab_9) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) + self.spinBox_network_width = QtWidgets.QSpinBox(self.page_17) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.spinBox_network_width.sizePolicy().hasHeightForWidth()) @@ -3706,7 +4424,7 @@ def setupUi(self, metaX_main): self.spinBox_network_width.setDisplayIntegerBase(10) self.spinBox_network_width.setObjectName("spinBox_network_width") self.horizontalLayout_56.addWidget(self.spinBox_network_width) - self.label_51 = QtWidgets.QLabel(self.tab_9) + self.label_51 = QtWidgets.QLabel(self.page_17) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) @@ -3714,9 +4432,9 @@ def setupUi(self, metaX_main): self.label_51.setSizePolicy(sizePolicy) self.label_51.setObjectName("label_51") self.horizontalLayout_56.addWidget(self.label_51) - self.spinBox_network_height = QtWidgets.QSpinBox(self.tab_9) + self.spinBox_network_height = QtWidgets.QSpinBox(self.page_17) self.spinBox_network_height.setEnabled(True) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.spinBox_network_height.sizePolicy().hasHeightForWidth()) @@ -3729,40 +4447,64 @@ def setupUi(self, metaX_main): self.spinBox_network_height.setDisplayIntegerBase(10) self.spinBox_network_height.setObjectName("spinBox_network_height") self.horizontalLayout_56.addWidget(self.spinBox_network_height) - self.gridLayout_6.addLayout(self.horizontalLayout_56, 8, 3, 1, 1) - self.comboBox_tfnet_select_list = QtWidgets.QComboBox(self.tab_9) - self.comboBox_tfnet_select_list.setObjectName("comboBox_tfnet_select_list") - self.gridLayout_6.addWidget(self.comboBox_tfnet_select_list, 4, 1, 1, 2) - self.horizontalLayout_55 = QtWidgets.QHBoxLayout() - self.horizontalLayout_55.setObjectName("horizontalLayout_55") - self.checkBox_tfnetwork_in_condition = QtWidgets.QCheckBox(self.tab_9) - self.checkBox_tfnetwork_in_condition.setLayoutDirection(QtCore.Qt.RightToLeft) - self.checkBox_tfnetwork_in_condition.setObjectName("checkBox_tfnetwork_in_condition") - self.horizontalLayout_55.addWidget(self.checkBox_tfnetwork_in_condition) - self.comboBox_tfnetwork_condition_meta = QtWidgets.QComboBox(self.tab_9) - self.comboBox_tfnetwork_condition_meta.setEnabled(False) - self.comboBox_tfnetwork_condition_meta.setObjectName("comboBox_tfnetwork_condition_meta") - self.horizontalLayout_55.addWidget(self.comboBox_tfnetwork_condition_meta) - self.horizontalLayout_80 = QtWidgets.QHBoxLayout() - self.horizontalLayout_80.setObjectName("horizontalLayout_80") - self.comboBox_tfnetwork_condition_group = QtWidgets.QComboBox(self.tab_9) - self.comboBox_tfnetwork_condition_group.setEnabled(False) - self.comboBox_tfnetwork_condition_group.setObjectName("comboBox_tfnetwork_condition_group") - self.horizontalLayout_80.addWidget(self.comboBox_tfnetwork_condition_group) - self.horizontalLayout_55.addLayout(self.horizontalLayout_80) - self.gridLayout_6.addLayout(self.horizontalLayout_55, 1, 1, 1, 1) + self.gridLayout_64.addLayout(self.horizontalLayout_56, 0, 0, 1, 1) + self.horizontalLayout_85 = QtWidgets.QHBoxLayout() + self.horizontalLayout_85.setObjectName("horizontalLayout_85") + self.checkBox_tf_link_net_plot_list_only = QtWidgets.QCheckBox(self.page_17) + self.checkBox_tf_link_net_plot_list_only.setObjectName("checkBox_tf_link_net_plot_list_only") + self.horizontalLayout_85.addWidget(self.checkBox_tf_link_net_plot_list_only) + self.checkBox_tf_link_net_plot_list_only_no_link = QtWidgets.QCheckBox(self.page_17) + self.checkBox_tf_link_net_plot_list_only_no_link.setEnabled(False) + self.checkBox_tf_link_net_plot_list_only_no_link.setChecked(False) + self.checkBox_tf_link_net_plot_list_only_no_link.setObjectName("checkBox_tf_link_net_plot_list_only_no_link") + self.horizontalLayout_85.addWidget(self.checkBox_tf_link_net_plot_list_only_no_link) + self.gridLayout_64.addLayout(self.horizontalLayout_85, 0, 1, 1, 1) + self.horizontalLayout_57 = QtWidgets.QHBoxLayout() + self.horizontalLayout_57.setObjectName("horizontalLayout_57") + self.checkBox_tf_link_net_show_label = QtWidgets.QCheckBox(self.page_17) + self.checkBox_tf_link_net_show_label.setObjectName("checkBox_tf_link_net_show_label") + self.horizontalLayout_57.addWidget(self.checkBox_tf_link_net_show_label) + self.checkBox_tf_link_net_rename_taxa = QtWidgets.QCheckBox(self.page_17) + self.checkBox_tf_link_net_rename_taxa.setEnabled(True) + self.checkBox_tf_link_net_rename_taxa.setChecked(True) + self.checkBox_tf_link_net_rename_taxa.setObjectName("checkBox_tf_link_net_rename_taxa") + self.horizontalLayout_57.addWidget(self.checkBox_tf_link_net_rename_taxa) + self.gridLayout_64.addLayout(self.horizontalLayout_57, 1, 0, 1, 1) self.horizontalLayout_69 = QtWidgets.QHBoxLayout() self.horizontalLayout_69.setObjectName("horizontalLayout_69") - self.label_163 = QtWidgets.QLabel(self.tab_9) + self.label_163 = QtWidgets.QLabel(self.page_17) self.label_163.setObjectName("label_163") self.horizontalLayout_69.addWidget(self.label_163) - self.spinBox_network_font_size = QtWidgets.QSpinBox(self.tab_9) + self.spinBox_network_font_size = QtWidgets.QSpinBox(self.page_17) self.spinBox_network_font_size.setEnabled(True) self.spinBox_network_font_size.setMinimum(1) self.spinBox_network_font_size.setProperty("value", 10) self.spinBox_network_font_size.setObjectName("spinBox_network_font_size") self.horizontalLayout_69.addWidget(self.spinBox_network_font_size) - self.gridLayout_6.addLayout(self.horizontalLayout_69, 11, 3, 1, 1) + self.gridLayout_64.addLayout(self.horizontalLayout_69, 1, 1, 1, 1) + self.toolBox_7.addItem(self.page_17, "") + self.gridLayout_6.addWidget(self.toolBox_7, 17, 0, 1, 3) + self.listWidget_tfnet_focus_list = QtWidgets.QListWidget(self.tab_9) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.MinimumExpanding) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.listWidget_tfnet_focus_list.sizePolicy().hasHeightForWidth()) + self.listWidget_tfnet_focus_list.setSizePolicy(sizePolicy) + self.listWidget_tfnet_focus_list.setObjectName("listWidget_tfnet_focus_list") + self.gridLayout_6.addWidget(self.listWidget_tfnet_focus_list, 8, 1, 1, 2) + self.radioButton_network_bygroup = QtWidgets.QRadioButton(self.tab_9) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.radioButton_network_bygroup.sizePolicy().hasHeightForWidth()) + self.radioButton_network_bygroup.setSizePolicy(sizePolicy) + self.radioButton_network_bygroup.setMaximumSize(QtCore.QSize(16777215, 50)) + self.radioButton_network_bygroup.setChecked(True) + self.radioButton_network_bygroup.setObjectName("radioButton_network_bygroup") + self.gridLayout_6.addWidget(self.radioButton_network_bygroup, 2, 0, 1, 1) + self.gridLayout_network_sample = QtWidgets.QGridLayout() + self.gridLayout_network_sample.setObjectName("gridLayout_network_sample") + self.gridLayout_6.addLayout(self.gridLayout_network_sample, 4, 1, 1, 2) self.horizontalLayout_58 = QtWidgets.QHBoxLayout() self.horizontalLayout_58.setObjectName("horizontalLayout_58") self.label_78 = QtWidgets.QLabel(self.tab_9) @@ -3815,40 +4557,101 @@ def setupUi(self, metaX_main): self.checkBox_tfnet_top_filtered.setSizePolicy(sizePolicy) self.checkBox_tfnet_top_filtered.setObjectName("checkBox_tfnet_top_filtered") self.horizontalLayout_58.addWidget(self.checkBox_tfnet_top_filtered) - self.gridLayout_6.addLayout(self.horizontalLayout_58, 7, 2, 1, 1) - self.pushButton_plot_network = QtWidgets.QPushButton(self.tab_9) - self.pushButton_plot_network.setEnabled(False) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_plot_network.sizePolicy().hasHeightForWidth()) - self.pushButton_plot_network.setSizePolicy(sizePolicy) - self.pushButton_plot_network.setCheckable(False) - self.pushButton_plot_network.setObjectName("pushButton_plot_network") - self.gridLayout_6.addWidget(self.pushButton_plot_network, 14, 3, 1, 1) + self.gridLayout_6.addLayout(self.horizontalLayout_58, 7, 1, 1, 1) self.label_77 = QtWidgets.QLabel(self.tab_9) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Minimum) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.label_77.sizePolicy().hasHeightForWidth()) self.label_77.setSizePolicy(sizePolicy) self.label_77.setObjectName("label_77") - self.gridLayout_6.addWidget(self.label_77, 4, 0, 1, 1) + self.gridLayout_6.addWidget(self.label_77, 6, 0, 1, 1) + self.line_28 = QtWidgets.QFrame(self.tab_9) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Minimum) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.line_28.sizePolicy().hasHeightForWidth()) + self.line_28.setSizePolicy(sizePolicy) + self.line_28.setFrameShape(QtWidgets.QFrame.HLine) + self.line_28.setFrameShadow(QtWidgets.QFrame.Sunken) + self.line_28.setObjectName("line_28") + self.gridLayout_6.addWidget(self.line_28, 5, 0, 1, 3) + self.comboBox_tfnet_select_list = QtWidgets.QComboBox(self.tab_9) + self.comboBox_tfnet_select_list.setObjectName("comboBox_tfnet_select_list") + self.gridLayout_6.addWidget(self.comboBox_tfnet_select_list, 6, 1, 1, 1) + self.verticalLayout_5 = QtWidgets.QVBoxLayout() + self.verticalLayout_5.setObjectName("verticalLayout_5") + self.pushButton_tfnet_drop_item = QtWidgets.QPushButton(self.tab_9) + self.pushButton_tfnet_drop_item.setEnabled(False) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.pushButton_tfnet_drop_item.sizePolicy().hasHeightForWidth()) + self.pushButton_tfnet_drop_item.setSizePolicy(sizePolicy) + self.pushButton_tfnet_drop_item.setObjectName("pushButton_tfnet_drop_item") + self.verticalLayout_5.addWidget(self.pushButton_tfnet_drop_item) + self.pushButton_tfnet_clean_list = QtWidgets.QPushButton(self.tab_9) + self.pushButton_tfnet_clean_list.setEnabled(False) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.pushButton_tfnet_clean_list.sizePolicy().hasHeightForWidth()) + self.pushButton_tfnet_clean_list.setSizePolicy(sizePolicy) + self.pushButton_tfnet_clean_list.setObjectName("pushButton_tfnet_clean_list") + self.verticalLayout_5.addWidget(self.pushButton_tfnet_clean_list) self.pushButton_tfnet_add_a_list = QtWidgets.QPushButton(self.tab_9) self.pushButton_tfnet_add_a_list.setEnabled(False) self.pushButton_tfnet_add_a_list.setObjectName("pushButton_tfnet_add_a_list") - self.gridLayout_6.addWidget(self.pushButton_tfnet_add_a_list, 14, 0, 1, 1) - self.horizontalLayout_85 = QtWidgets.QHBoxLayout() - self.horizontalLayout_85.setObjectName("horizontalLayout_85") - self.checkBox_tf_link_net_plot_list_only = QtWidgets.QCheckBox(self.tab_9) - self.checkBox_tf_link_net_plot_list_only.setObjectName("checkBox_tf_link_net_plot_list_only") - self.horizontalLayout_85.addWidget(self.checkBox_tf_link_net_plot_list_only) - self.checkBox_tf_link_net_plot_list_only_no_link = QtWidgets.QCheckBox(self.tab_9) - self.checkBox_tf_link_net_plot_list_only_no_link.setEnabled(False) - self.checkBox_tf_link_net_plot_list_only_no_link.setChecked(False) - self.checkBox_tf_link_net_plot_list_only_no_link.setObjectName("checkBox_tf_link_net_plot_list_only_no_link") - self.horizontalLayout_85.addWidget(self.checkBox_tf_link_net_plot_list_only_no_link) - self.gridLayout_6.addLayout(self.horizontalLayout_85, 13, 3, 1, 1) + self.verticalLayout_5.addWidget(self.pushButton_tfnet_add_a_list) + self.gridLayout_6.addLayout(self.verticalLayout_5, 8, 0, 1, 1) + self.horizontalLayout_55 = QtWidgets.QHBoxLayout() + self.horizontalLayout_55.setObjectName("horizontalLayout_55") + self.checkBox_tfnetwork_in_condition = QtWidgets.QCheckBox(self.tab_9) + self.checkBox_tfnetwork_in_condition.setLayoutDirection(QtCore.Qt.RightToLeft) + self.checkBox_tfnetwork_in_condition.setObjectName("checkBox_tfnetwork_in_condition") + self.horizontalLayout_55.addWidget(self.checkBox_tfnetwork_in_condition) + self.comboBox_tfnetwork_condition_meta = QtWidgets.QComboBox(self.tab_9) + self.comboBox_tfnetwork_condition_meta.setEnabled(False) + self.comboBox_tfnetwork_condition_meta.setObjectName("comboBox_tfnetwork_condition_meta") + self.horizontalLayout_55.addWidget(self.comboBox_tfnetwork_condition_meta) + self.horizontalLayout_80 = QtWidgets.QHBoxLayout() + self.horizontalLayout_80.setObjectName("horizontalLayout_80") + self.comboBox_tfnetwork_condition_group = QtWidgets.QComboBox(self.tab_9) + self.comboBox_tfnetwork_condition_group.setEnabled(False) + self.comboBox_tfnetwork_condition_group.setObjectName("comboBox_tfnetwork_condition_group") + self.horizontalLayout_80.addWidget(self.comboBox_tfnetwork_condition_group) + self.horizontalLayout_55.addLayout(self.horizontalLayout_80) + self.gridLayout_6.addLayout(self.horizontalLayout_55, 2, 1, 1, 1) + self.horizontalLayout_9 = QtWidgets.QHBoxLayout() + self.horizontalLayout_9.setObjectName("horizontalLayout_9") + self.label_49 = QtWidgets.QLabel(self.tab_9) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Preferred) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.label_49.sizePolicy().hasHeightForWidth()) + self.label_49.setSizePolicy(sizePolicy) + self.label_49.setObjectName("label_49") + self.horizontalLayout_9.addWidget(self.label_49) + self.comboBox_tfnet_table = QtWidgets.QComboBox(self.tab_9) + self.comboBox_tfnet_table.setEnabled(False) + self.comboBox_tfnet_table.setObjectName("comboBox_tfnet_table") + self.comboBox_tfnet_table.addItem("") + self.comboBox_tfnet_table.addItem("") + self.comboBox_tfnet_table.addItem("") + self.horizontalLayout_9.addWidget(self.comboBox_tfnet_table) + self.label_150 = QtWidgets.QLabel(self.tab_9) + self.label_150.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter) + self.label_150.setObjectName("label_150") + self.horizontalLayout_9.addWidget(self.label_150) + self.comboBox_network_meta = QtWidgets.QComboBox(self.tab_9) + self.comboBox_network_meta.setObjectName("comboBox_network_meta") + self.horizontalLayout_9.addWidget(self.comboBox_network_meta) + self.gridLayout_6.addLayout(self.horizontalLayout_9, 0, 0, 1, 3) + self.line_27 = QtWidgets.QFrame(self.tab_9) + self.line_27.setFrameShape(QtWidgets.QFrame.HLine) + self.line_27.setFrameShadow(QtWidgets.QFrame.Sunken) + self.line_27.setObjectName("line_27") + self.gridLayout_6.addWidget(self.line_27, 1, 0, 1, 3) self.tabWidget_2.addTab(self.tab_9, "") self.gridLayout_19.addWidget(self.tabWidget_2, 0, 0, 1, 1) self.tabWidget_TaxaFuncAnalyzer.addTab(self.tab_others_stats, "") @@ -3874,7 +4677,7 @@ def setupUi(self, metaX_main): self.listWidget_table_list.setObjectName("listWidget_table_list") self.gridLayout_18.addWidget(self.listWidget_table_list, 0, 0, 1, 1) self.tabWidget_TaxaFuncAnalyzer.addTab(self.tab_table_review, "") - self.gridLayout_7.addWidget(self.tabWidget_TaxaFuncAnalyzer, 0, 1, 1, 1) + self.gridLayout_7.addWidget(self.tabWidget_TaxaFuncAnalyzer, 0, 0, 1, 1) self.stackedWidget.addWidget(self.page_analyzer) self.page_pep_to_taxafunc = QtWidgets.QWidget() self.page_pep_to_taxafunc.setObjectName("page_pep_to_taxafunc") @@ -4272,7 +5075,7 @@ def setupUi(self, metaX_main): self.statusbar.setObjectName("statusbar") metaX_main.setStatusBar(self.statusbar) self.menuBar = QtWidgets.QMenuBar(metaX_main) - self.menuBar.setGeometry(QtCore.QRect(0, 0, 1059, 23)) + self.menuBar.setGeometry(QtCore.QRect(0, 0, 972, 21)) self.menuBar.setObjectName("menuBar") self.menuTools = QtWidgets.QMenu(self.menuBar) self.menuTools.setObjectName("menuTools") @@ -4332,21 +5135,25 @@ def setupUi(self, metaX_main): self.retranslateUi(metaX_main) self.stackedWidget.setCurrentIndex(0) - self.tabWidget_TaxaFuncAnalyzer.setCurrentIndex(6) + self.tabWidget_TaxaFuncAnalyzer.setCurrentIndex(3) self.toolBox_2.setCurrentIndex(0) self.tabWidget_4.setCurrentIndex(1) + self.toolBox_4.setCurrentIndex(1) + self.toolBox.setCurrentIndex(0) self.tabWidget_3.setCurrentIndex(3) + self.toolBox_3.setCurrentIndex(1) + self.toolBox_9.setCurrentIndex(0) self.tabWidget.setCurrentIndex(0) - self.tabWidget_2.setCurrentIndex(1) + self.toolBox_5.setCurrentIndex(1) + self.toolBox_6.setCurrentIndex(0) + self.tabWidget_2.setCurrentIndex(0) + self.toolBox_8.setCurrentIndex(0) + self.toolBox_7.setCurrentIndex(0) self.tabWidget_6.setCurrentIndex(1) self.toolBox_metalab_res_anno.setCurrentIndex(0) self.tabWidget_5.setCurrentIndex(0) - self.checkBox_co_expression_in_condition.clicked['bool'].connect(self.comboBox_co_expression_condition_meta.setEnabled) # type: ignore - self.checkBox_co_expression_in_condition.clicked['bool'].connect(self.comboBox_co_expression_condition_group.setEnabled) # type: ignore self.checkBox_deseq2_comparing_in_condition.clicked['bool'].connect(self.comboBox_deseq2_condition_meta.setEnabled) # type: ignore self.checkBox_deseq2_comparing_in_condition.clicked['bool'].connect(self.comboBox_deseq2_condition_group.setEnabled) # type: ignore - self.checkBox_trends_in_condition.clicked['bool'].connect(self.comboBox_trends_condition_meta.setEnabled) # type: ignore - self.checkBox_trends_in_condition.clicked['bool'].connect(self.comboBox_trends_condition_group.setEnabled) # type: ignore self.checkBox_tflink_in_condition.clicked['bool'].connect(self.comboBox_tflink_condition_meta.setEnabled) # type: ignore self.checkBox_tflink_in_condition.clicked['bool'].connect(self.comboBox_tflink_condition_group.setEnabled) # type: ignore self.checkBox_tfnetwork_in_condition.clicked['bool'].connect(self.comboBox_tfnetwork_condition_meta.setEnabled) # type: ignore @@ -4366,8 +5173,12 @@ def setupUi(self, metaX_main): self.checkBox_pca_if_show_lable.clicked['bool'].connect(self.checkBox_sunburst_show_all_lables.setEnabled) # type: ignore self.checkBox_pca_if_show_lable.clicked['bool'].connect(self.doubleSpinBox_basic_pca_label_font_transparency.setEnabled) # type: ignore self.checkBox_basic_in_condtion.clicked['bool'].connect(self.comboBox_basic_condition_group.setEnabled) # type: ignore - self.checkBox_basic_heatmap_plot_mean.clicked['bool'].connect(self.comboBox_3dbar_sub_meta.setDisabled) # type: ignore self.checkBox_tf_link_net_plot_list_only.clicked['bool'].connect(self.checkBox_tf_link_net_plot_list_only_no_link.setEnabled) # type: ignore + self.checkBox_basic_heatmap_plot_mean.clicked['bool'].connect(self.comboBox_3dbar_sub_meta.setDisabled) # type: ignore + self.checkBox_co_expression_in_condition.clicked['bool'].connect(self.comboBox_co_expression_condition_meta.setEnabled) # type: ignore + self.checkBox_co_expression_in_condition.clicked['bool'].connect(self.comboBox_co_expression_condition_group.setEnabled) # type: ignore + self.checkBox_trends_in_condition.clicked['bool'].connect(self.comboBox_trends_condition_meta.setEnabled) # type: ignore + self.checkBox_trends_in_condition.clicked['bool'].connect(self.comboBox_trends_condition_group.setEnabled) # type: ignore QtCore.QMetaObject.connectSlotsByName(metaX_main) metaX_main.setTabOrder(self.comboBox_taxa_level_to_stast, self.toolButton_meta_table_help) metaX_main.setTabOrder(self.toolButton_meta_table_help, self.comboBox_function_to_stast) @@ -4501,6 +5312,8 @@ def retranslateUi(self, metaX_main): self.label_45.setText(_translate("metaX_main", "Drag to change the processing order")) self.label_102.setText(_translate("metaX_main", "Outliers Handling by")) self.tabWidget_TaxaFuncAnalyzer.setTabText(self.tabWidget_TaxaFuncAnalyzer.indexOf(self.tab_set_taxa_func), _translate("metaX_main", "Set TaxaFunc")) + self.radioButton_basic_pca_sample.setText(_translate("metaX_main", "Samples")) + self.radioButton_basic_pca_group.setText(_translate("metaX_main", "Groups")) self.checkBox_basic_in_condtion.setText(_translate("metaX_main", "In Condition")) self.label_70.setText(_translate("metaX_main", "Table")) self.comboBox_table4pca.setItemText(0, _translate("metaX_main", "Taxa")) @@ -4508,30 +5321,32 @@ def retranslateUi(self, metaX_main): self.comboBox_table4pca.setItemText(2, _translate("metaX_main", "Taxa-Functions")) self.comboBox_table4pca.setItemText(3, _translate("metaX_main", "Peptides")) self.label_146.setText(_translate("metaX_main", "Meta")) - self.radioButton_basic_pca_sample.setText(_translate("metaX_main", "Samples")) - self.radioButton_basic_pca_group.setText(_translate("metaX_main", "Groups")) - self.label_122.setText(_translate("metaX_main", "Plot Param")) - self.checkBox_pca_if_show_group_name_in_label.setToolTip(_translate("metaX_main", "Add group name to Sample names")) - self.checkBox_pca_if_show_group_name_in_label.setText(_translate("metaX_main", "Rename Samples")) - self.checkBox_pca_if_show_lable.setToolTip(_translate("metaX_main", "Show label text in diagram")) - self.checkBox_pca_if_show_lable.setText(_translate("metaX_main", "Show Labels")) - self.checkBox_pca_if_adjust_pca_label.setToolTip(_translate("metaX_main", "Adjust label text to reduce overlap")) - self.checkBox_pca_if_adjust_pca_label.setText(_translate("metaX_main", "Adjust Labels")) - self.label_94.setText(_translate("metaX_main", "Width")) - self.label_101.setText(_translate("metaX_main", "Height")) - self.label_159.setToolTip(_translate("metaX_main", "The number of columns in the legend, set 0 to hide")) - self.label_159.setText(_translate("metaX_main", "Legend Cols")) self.label_142.setText(_translate("metaX_main", "Sub Meta ")) self.comboBox_sub_meta_pca.setItemText(0, _translate("metaX_main", "None")) - self.label_151.setText(_translate("metaX_main", "Theme")) + self.pushButton_plot_corr.setText(_translate("metaX_main", "Correlation Heatmap")) + self.pushButton_basic_plot_number_bar.setText(_translate("metaX_main", "Bar")) + self.label_170.setText(_translate("metaX_main", "Bar of Counts")) + self.pushButton_plot_box_sns.setText(_translate("metaX_main", "Box")) + self.pushButton_plot_beta_div.setText(_translate("metaX_main", "Beta Diversity")) + self.pushButton_plot_pca_js.setText(_translate("metaX_main", "3D PCA")) + self.label_121.setText(_translate("metaX_main", "PCA")) + self.label_171.setText(_translate("metaX_main", "Diversity")) + self.pushButton_plot_alpha_div.setText(_translate("metaX_main", "Alpha Diversity")) + self.pushButton_plot_pca_sns.setText(_translate("metaX_main", "PCA")) + self.label_119.setText(_translate("metaX_main", "Correlation")) + self.pushButton_plot_basic_treemap.setText(_translate("metaX_main", "TreeMap")) + self.pushButton_plot_sunburst.setText(_translate("metaX_main", "Sunburst")) + self.label_172.setText(_translate("metaX_main", "Taxa Overview")) + self.pushButton_plot_basic_sankey.setText(_translate("metaX_main", "Sankey")) + self.label_173.setText(_translate("metaX_main", "Sankey")) + self.toolBox_4.setItemText(self.toolBox_4.indexOf(self.page_10), _translate("metaX_main", "Plot")) + self.label_169.setText(_translate("metaX_main", "Box Plot")) + self.label_137.setText(_translate("metaX_main", "Sunburst")) self.label_107.setText(_translate("metaX_main", "Font Size")) - self.label_116.setToolTip(_translate("metaX_main", "Transparency of labes")) - self.label_116.setText(_translate("metaX_main", "Transparency")) - self.label_160.setToolTip(_translate("metaX_main", "Dots size for PCA and Beta Diversity")) - self.label_160.setText(_translate("metaX_main", "Dot Size")) - self.pushButton_plot_pca_sns.setText(_translate("metaX_main", "Plot PCA")) - self.checkBox_basic_plot_number_plot_sample.setText(_translate("metaX_main", "Plot Samples")) - self.pushButton_basic_plot_number_bar.setText(_translate("metaX_main", "Plot Number")) + self.checkBox_pca_if_adjust_pca_label.setToolTip(_translate("metaX_main", "Adjust label text to reduce overlap")) + self.checkBox_pca_if_adjust_pca_label.setText(_translate("metaX_main", "Adjust Labels")) + self.label_122.setText(_translate("metaX_main", "general")) + self.label_118.setText(_translate("metaX_main", "Beta Diversity")) self.comboBox_beta_div_method.setItemText(0, _translate("metaX_main", "braycurtis")) self.comboBox_beta_div_method.setItemText(1, _translate("metaX_main", "jaccard")) self.comboBox_beta_div_method.setItemText(2, _translate("metaX_main", "euclidean")) @@ -4541,25 +5356,19 @@ def retranslateUi(self, metaX_main): self.comboBox_beta_div_method.setItemText(6, _translate("metaX_main", "dice")) self.comboBox_beta_div_method.setItemText(7, _translate("metaX_main", "hamming")) self.comboBox_beta_div_method.setItemText(8, _translate("metaX_main", "yule")) - self.label_118.setText(_translate("metaX_main", "Beta Diversity")) - self.label_137.setText(_translate("metaX_main", "Overview")) - self.label_117.setText(_translate("metaX_main", "Alpha Diversity")) - self.checkBox_sunburst_show_all_lables.setText(_translate("metaX_main", "Show All Lables for Sunburst")) - self.pushButton_plot_sunburst.setText(_translate("metaX_main", "Plot Sunburst")) - self.label_121.setText(_translate("metaX_main", "PCA")) - self.pushButton_plot_pca_js.setText(_translate("metaX_main", "Plot 3D PCA")) - self.checkBox_box_if_show_fliers.setText(_translate("metaX_main", "show Fliers")) - self.checkBox_box_plot_samples.setText(_translate("metaX_main", "Plot Samples")) - self.pushButton_plot_box_sns.setText(_translate("metaX_main", "Plot Box")) + self.checkBox_basic_plot_number_plot_sample.setText(_translate("metaX_main", "Plot Samples")) + self.label_94.setText(_translate("metaX_main", "Width")) + self.label_101.setText(_translate("metaX_main", "Height")) self.checkBox_corr_cluster.setText(_translate("metaX_main", "Cluster")) - self.label_129.setText(_translate("metaX_main", "Show All Labels")) - self.checkBox_corr_show_all_labels_x.setText(_translate("metaX_main", "X")) - self.checkBox_corr_show_all_labels_y.setText(_translate("metaX_main", "Y")) - self.label_155.setText(_translate("metaX_main", "Number")) - self.pushButton_plot_corr.setText(_translate("metaX_main", "Plot Corr")) - self.pushButton_plot_alpha_div.setText(_translate("metaX_main", "Plot Alpha Diversity")) - self.pushButton_plot_beta_div.setText(_translate("metaX_main", "Plot Beta Diversity")) - self.label_119.setText(_translate("metaX_main", "Correlation")) + self.label_192.setText(_translate("metaX_main", "Theme")) + self.label_168.setText(_translate("metaX_main", "Correlation Heatmap")) + self.label_167.setText(_translate("metaX_main", "Diversity")) + self.checkBox_box_if_show_fliers.setText(_translate("metaX_main", "show Fliers")) + self.label_159.setToolTip(_translate("metaX_main", "The number of columns in the legend, set 0 to hide")) + self.label_159.setText(_translate("metaX_main", "Legend Cols")) + self.label_151.setText(_translate("metaX_main", "Theme")) + self.label_155.setText(_translate("metaX_main", "Bar Plot")) + self.label_117.setText(_translate("metaX_main", "Alpha Diversity")) self.checkBox_alpha_div_plot_all_samples.setText(_translate("metaX_main", "Plot Samples")) self.comboBox_alpha_div_method.setItemText(0, _translate("metaX_main", "shannon")) self.comboBox_alpha_div_method.setItemText(1, _translate("metaX_main", "simpson")) @@ -4569,23 +5378,28 @@ def retranslateUi(self, metaX_main): self.comboBox_alpha_div_method.setItemText(5, _translate("metaX_main", "fisher_alpha")) self.comboBox_alpha_div_method.setItemText(6, _translate("metaX_main", "dominance")) self.comboBox_alpha_div_method.setItemText(7, _translate("metaX_main", "menhinick")) - self.pushButton_plot_basic_treemap.setText(_translate("metaX_main", "Plot TreeMap")) - self.pushButton_plot_basic_sankey.setText(_translate("metaX_main", "Plot Sankey")) + self.checkBox_pca_if_show_group_name_in_label.setToolTip(_translate("metaX_main", "Add group name to Sample names")) + self.checkBox_pca_if_show_group_name_in_label.setText(_translate("metaX_main", "Rename Samples")) + self.checkBox_pca_if_show_lable.setToolTip(_translate("metaX_main", "Show label text in diagram")) + self.checkBox_pca_if_show_lable.setText(_translate("metaX_main", "Show Labels")) + self.label_116.setToolTip(_translate("metaX_main", "Transparency of labes")) + self.label_116.setText(_translate("metaX_main", "Transparency")) + self.label_160.setToolTip(_translate("metaX_main", "Dots size for PCA and Beta Diversity")) + self.label_160.setText(_translate("metaX_main", "Dot Size")) + self.checkBox_sunburst_show_all_lables.setText(_translate("metaX_main", "Show All Lables for Sunburst")) + self.checkBox_box_plot_samples.setText(_translate("metaX_main", "Plot Samples")) + self.label_179.setText(_translate("metaX_main", "Scatter Plot")) + self.label_129.setText(_translate("metaX_main", "Show All Labels")) + self.checkBox_corr_show_all_labels_x.setText(_translate("metaX_main", "X")) + self.checkBox_corr_show_all_labels_y.setText(_translate("metaX_main", "Y")) + self.toolBox_4.setItemText(self.toolBox_4.indexOf(self.page_11), _translate("metaX_main", "Plotting Parameter")) self.tabWidget_4.setTabText(self.tabWidget_4.indexOf(self.tab_12), _translate("metaX_main", "Basic Plot")) + self.label_34.setText(_translate("metaX_main", "List for Plotting")) + self.pushButton_basic_heatmap_add_top.setToolTip(_translate("metaX_main", "Add conditionally filtered items to the drawing box")) + self.pushButton_basic_heatmap_add_top.setText(_translate("metaX_main", "Add Top to List")) self.radioButton_basic_heatmap_sample.setText(_translate("metaX_main", "Sample")) - self.pushButton_basic_heatmap_get_table.setText(_translate("metaX_main", "Get Table")) - self.pushButton_basic_heatmap_sankey_plot.setText(_translate("metaX_main", "Plot Sankey")) - self.pushButton_basic_bar_plot.setText(_translate("metaX_main", "Plot Bar")) - self.comboBox_3dbar_sub_meta.setToolTip(_translate("metaX_main", "Sub Meta for Bar Plot")) - self.pushButton_basic_heatmap_plot.setText(_translate("metaX_main", "Plot Heatmap")) - self.label_164.setText(_translate("metaX_main", "Sub Meta ")) self.checkBox_basic_heatmap_in_condition.setText(_translate("metaX_main", "In Condition")) - self.label_34.setText(_translate("metaX_main", "List for Plotting")) - self.pushButton_basic_heatmap_add.setToolTip(_translate("metaX_main", "Add selected item to the drawing box")) - self.pushButton_basic_heatmap_add.setText(_translate("metaX_main", "Add to List")) - self.label_35.setText(_translate("metaX_main", "Width")) - self.label_33.setText(_translate("metaX_main", "Height")) - self.label_108.setText(_translate("metaX_main", "Label Font Size")) + self.label_32.setText(_translate("metaX_main", "Select for plotting")) self.label_67.setText(_translate("metaX_main", "Select Top")) self.label_68.setText(_translate("metaX_main", "Sort by")) self.comboBox_basic_heatmap_top_by.setItemText(0, _translate("metaX_main", "Total Intensity")) @@ -4600,48 +5414,60 @@ def retranslateUi(self, metaX_main): self.comboBox_basic_heatmap_top_by.setItemText(9, _translate("metaX_main", "Deseq2-up(log2FC)")) self.comboBox_basic_heatmap_top_by.setItemText(10, _translate("metaX_main", "Deseq2-down(log2FC)")) self.checkBox_basic_heatmap_top_filtered.setText(_translate("metaX_main", "Filter with threshold")) + self.label_80.setText(_translate("metaX_main", "Table")) + self.comboBox_basic_table.setItemText(0, _translate("metaX_main", "Taxa")) + self.comboBox_basic_table.setItemText(1, _translate("metaX_main", "Functions")) + self.comboBox_basic_table.setItemText(2, _translate("metaX_main", "Taxa-Functions")) + self.comboBox_basic_table.setItemText(3, _translate("metaX_main", "Peptides")) + self.label_144.setText(_translate("metaX_main", "Meta")) + self.label_164.setText(_translate("metaX_main", "Sub Meta ")) + self.comboBox_3dbar_sub_meta.setToolTip(_translate("metaX_main", "Sub Meta for Bar Plot")) + self.radioButton_basic_heatmap_group.setText(_translate("metaX_main", "Group")) + self.pushButton_basic_heatmap_add.setToolTip(_translate("metaX_main", "Add selected item to the drawing box")) + self.pushButton_basic_heatmap_add.setText(_translate("metaX_main", "Add to List")) self.pushButton_basic_heatmap_drop_item.setText(_translate("metaX_main", "Drop Item")) self.pushButton_basic_heatmap_clean_list.setText(_translate("metaX_main", "Clean List")) self.pushButton_basic_heatmap_add_a_list.setToolTip(_translate("metaX_main", "Add a list to the drawing box, make sure there is one item per line.")) - self.pushButton_basic_heatmap_add_a_list.setText(_translate("metaX_main", "Add a list")) - self.label_145.setText(_translate("metaX_main", "Plotting Parameter")) - self.label_13.setText(_translate("metaX_main", "Theme")) + self.pushButton_basic_heatmap_add_a_list.setText(_translate("metaX_main", "Add A List")) + self.pushButton_basic_heatmap_get_table.setText(_translate("metaX_main", "Get Table")) + self.pushButton_basic_heatmap_sankey_plot.setText(_translate("metaX_main", "Plot Sankey")) + self.pushButton_basic_bar_plot.setText(_translate("metaX_main", "Plot Bar")) + self.pushButton_basic_heatmap_plot.setText(_translate("metaX_main", "Plot Heatmap")) + self.toolBox.setItemText(self.toolBox.indexOf(self.page_7), _translate("metaX_main", "Plot")) + self.label_35.setText(_translate("metaX_main", "Width")) + self.label_33.setText(_translate("metaX_main", "Height")) + self.label_185.setText(_translate("metaX_main", "Bar")) + self.label_186.setText(_translate("metaX_main", "Sankey")) self.label_31.setText(_translate("metaX_main", "Scale")) self.comboBox_basic_hetatmap_scale.setItemText(0, _translate("metaX_main", "row")) self.comboBox_basic_hetatmap_scale.setItemText(1, _translate("metaX_main", "column")) self.comboBox_basic_hetatmap_scale.setItemText(2, _translate("metaX_main", "None")) - self.checkBox_basic_heatmap_plot_peptide.setText(_translate("metaX_main", "Plot Peptides")) - self.label_130.setText(_translate("metaX_main", "Show All Labels")) - self.checkBox_basic_heatmap_plot_mean.setText(_translate("metaX_main", "Plot Mean")) - self.label_152.setText(_translate("metaX_main", "Rename")) + self.label_13.setText(_translate("metaX_main", "Theme")) self.checkBox_basic_hetatmap_row_cluster.setText(_translate("metaX_main", "Row Cluster")) + self.label_183.setText(_translate("metaX_main", "General")) + self.checkBox_basic_bar_show_legend.setText(_translate("metaX_main", "Show Legend")) + self.checkBox_basic_heatmap_sankey_title.setText(_translate("metaX_main", "Show Title")) + self.label_184.setText(_translate("metaX_main", "Heatmap")) self.checkBox_basic_hetatmap_col_cluster.setText(_translate("metaX_main", "Col Cluster")) - self.checkBox_basic_hetatmap_rename_taxa.setToolTip(_translate("metaX_main", "Only show the last level of name")) - self.checkBox_basic_hetatmap_rename_taxa.setText(_translate("metaX_main", "Taxa")) - self.checkBox_basic_heatmap_sankey_title.setText(_translate("metaX_main", "Sankey Title")) + self.checkBox_basic_bar_plot_percent.setText(_translate("metaX_main", "Plot Percentage")) + self.checkBox_basic_heatmap_plot_mean.setText(_translate("metaX_main", "Plot Mean")) + self.checkBox_basic_heatmap_plot_peptide.setText(_translate("metaX_main", "Plot Peptides")) + self.label_130.setText(_translate("metaX_main", "Show All Labels")) self.checkBox_basic_hetatmap_show_all_labels_x.setText(_translate("metaX_main", "X")) + self.checkBox_basic_hetatmap_show_all_labels_y.setText(_translate("metaX_main", "Y")) + self.label_152.setText(_translate("metaX_main", "Rename")) self.checkBox_basic_hetatmap_rename_sample_name.setToolTip(_translate("metaX_main", "Add group name to Sample names")) self.checkBox_basic_hetatmap_rename_sample_name.setText(_translate("metaX_main", "Samples")) - self.checkBox_basic_hetatmap_show_all_labels_y.setText(_translate("metaX_main", "Y")) - self.checkBox_basic_bar_show_legend.setText(_translate("metaX_main", "Bar Lgd")) - self.checkBox_basic_bar_plot_percent.setText(_translate("metaX_main", "Bar %")) - self.radioButton_basic_heatmap_group.setText(_translate("metaX_main", "Group")) - self.label_32.setText(_translate("metaX_main", "Select for plotting")) - self.pushButton_basic_heatmap_add_top.setToolTip(_translate("metaX_main", "Add conditionally filtered items to the drawing box")) - self.pushButton_basic_heatmap_add_top.setText(_translate("metaX_main", "Add Top to List")) - self.label_80.setText(_translate("metaX_main", "Table")) - self.comboBox_basic_table.setItemText(0, _translate("metaX_main", "Taxa")) - self.comboBox_basic_table.setItemText(1, _translate("metaX_main", "Functions")) - self.comboBox_basic_table.setItemText(2, _translate("metaX_main", "Taxa-Functions")) - self.comboBox_basic_table.setItemText(3, _translate("metaX_main", "Peptides")) - self.label_144.setText(_translate("metaX_main", "Meta")) + self.checkBox_basic_hetatmap_rename_taxa.setToolTip(_translate("metaX_main", "Only show the last level of name")) + self.checkBox_basic_hetatmap_rename_taxa.setText(_translate("metaX_main", "Taxa")) + self.label_108.setText(_translate("metaX_main", "Label Font Size")) + self.toolBox.setItemText(self.toolBox.indexOf(self.page_6), _translate("metaX_main", "Plotting Parameter")) self.tabWidget_4.setTabText(self.tabWidget_4.indexOf(self.tab_13), _translate("metaX_main", "Heatmap and Bar")) self.label_81.setText(_translate("metaX_main", "Peptide")) self.pushButton_basic_peptide_query.setText(_translate("metaX_main", "Query")) self.tabWidget_4.setTabText(self.tabWidget_4.indexOf(self.tab_10), _translate("metaX_main", "Peptide Query")) self.tabWidget_TaxaFuncAnalyzer.setTabText(self.tabWidget_TaxaFuncAnalyzer.indexOf(self.tab_basic_stast), _translate("metaX_main", "Basic Stats")) self.pushButton_ttest.setText(_translate("metaX_main", "Run T-Test")) - self.label_52.setText(_translate("metaX_main", "Group 2")) self.label_42.setText(_translate("metaX_main", "Group 1")) self.label_36.setText(_translate("metaX_main", "Table")) self.comboBox_table_for_ttest.setItemText(0, _translate("metaX_main", "Taxa-Functions")) @@ -4651,10 +5477,9 @@ def retranslateUi(self, metaX_main): self.comboBox_table_for_ttest.setItemText(4, _translate("metaX_main", "Significant Taxa-Func")) self.label_103.setText(_translate("metaX_main", "Meta")) self.checkBox_ttest_in_condition.setText(_translate("metaX_main", "In Condition")) + self.label_52.setText(_translate("metaX_main", "Group 2")) self.tabWidget_3.setTabText(self.tabWidget_3.indexOf(self.tab_3), _translate("metaX_main", "T-TEST")) - self.label_104.setText(_translate("metaX_main", "Group by")) self.label_53.setText(_translate("metaX_main", "Groups (Default all)")) - self.pushButton_anova_test.setText(_translate("metaX_main", "Run ANOVA Test")) self.label_37.setText(_translate("metaX_main", "Table")) self.comboBox_table_for_anova.setItemText(0, _translate("metaX_main", "Taxa-Functions")) self.comboBox_table_for_anova.setItemText(1, _translate("metaX_main", "Taxa")) @@ -4662,25 +5487,14 @@ def retranslateUi(self, metaX_main): self.comboBox_table_for_anova.setItemText(3, _translate("metaX_main", "peptides")) self.comboBox_table_for_anova.setItemText(4, _translate("metaX_main", "Significant Taxa-Func")) self.checkBox_anova_in_condition.setText(_translate("metaX_main", "In Condition")) - self.tabWidget_3.setTabText(self.tabWidget_3.indexOf(self.tab_7), _translate("metaX_main", "ANOVA TEST")) - self.label_tukey_func_num.setText(_translate("metaX_main", "Linked Number: -")) - self.pushButton_show_linked_taxa.setText(_translate("metaX_main", "Show Linked Taxa Only")) - self.label_55.setText(_translate("metaX_main", "Taxon")) - self.pushButton_show_linked_func.setText(_translate("metaX_main", "Show Linked Func Only")) - self.pushButton_plot_tukey.setText(_translate("metaX_main", "Plot TUKEY")) - self.label_54.setText(_translate("metaX_main", "Function")) - self.label_tukey_taxa_num.setText(_translate("metaX_main", "Linked Number: -")) - self.pushButton_tukey_fresh.setToolTip(_translate("metaX_main", "Restore both lists to their original full items")) - self.pushButton_tukey_fresh.setText(_translate("metaX_main", "Reset Funtion & Taxa List")) - self.pushButton_tukey_test.setText(_translate("metaX_main", "Run TUKEY Test")) - self.label_106.setText(_translate("metaX_main", "Meta")) - self.checkBox_tukey_in_condition.setText(_translate("metaX_main", "In Condition")) - self.label_111.setText(_translate("metaX_main", "Stats for")) - self.comboBox_tukey_by_sum_each.setItemText(0, _translate("metaX_main", "Sum All")) - self.comboBox_tukey_by_sum_each.setItemText(1, _translate("metaX_main", "Each Item")) - self.tabWidget_3.setTabText(self.tabWidget_3.indexOf(self.tab_4), _translate("metaX_main", "TUKEY TEST")) + self.label_104.setText(_translate("metaX_main", "Group by")) + self.pushButton_anova_test.setText(_translate("metaX_main", "Run ANOVA Test")) + self.tabWidget_3.setTabText(self.tabWidget_3.indexOf(self.tab_7), _translate("metaX_main", "ANOVA TEST")) + self.label_115.setText(_translate("metaX_main", "Control Group")) self.checkBox_comparing_group_control_in_condition.setText(_translate("metaX_main", "Comparing in Each Condition")) self.label_140.setText(_translate("metaX_main", " By:")) + self.label_114.setText(_translate("metaX_main", "Groups (Default all)")) + self.pushButton_dunnett_test.setText(_translate("metaX_main", "Run Dunnett\'s TEST")) self.label_112.setText(_translate("metaX_main", "Table")) self.comboBox_table_for_dunnett.setItemText(0, _translate("metaX_main", "Taxa-Functions")) self.comboBox_table_for_dunnett.setItemText(1, _translate("metaX_main", "Taxa")) @@ -4688,88 +5502,95 @@ def retranslateUi(self, metaX_main): self.comboBox_table_for_dunnett.setItemText(3, _translate("metaX_main", "peptides")) self.label_113.setText(_translate("metaX_main", "Meta")) self.checkBox_group_control_in_condition.setText(_translate("metaX_main", "In Condition")) - self.label_114.setText(_translate("metaX_main", "Groups (Default all)")) - self.pushButton_dunnett_test.setText(_translate("metaX_main", "Run Dunnett\'s TEST")) - self.label_115.setText(_translate("metaX_main", "Control Group")) self.pushButton_multi_deseq2.setText(_translate("metaX_main", "Run Deseq2")) self.tabWidget_3.setTabText(self.tabWidget_3.indexOf(self.tab_16), _translate("metaX_main", "Group-Control TEST ")) + self.label_166.setText(_translate("metaX_main", "Groups")) + self.label_2.setText(_translate("metaX_main", "Group 1")) + self.label_3.setText(_translate("metaX_main", "Group 2")) + self.pushButton_deseq2.setText(_translate("metaX_main", "Run DESeq2")) + self.comboBox_table_for_deseq2.setItemText(0, _translate("metaX_main", "Taxa-Functions")) + self.comboBox_table_for_deseq2.setItemText(1, _translate("metaX_main", "Taxa")) + self.comboBox_table_for_deseq2.setItemText(2, _translate("metaX_main", "Functions")) + self.comboBox_table_for_deseq2.setItemText(3, _translate("metaX_main", "Peptides")) + self.label_147.setText(_translate("metaX_main", "Meta")) + self.label_4.setText(_translate("metaX_main", "Table")) + self.checkBox_deseq2_comparing_in_condition.setText(_translate("metaX_main", "In Condition")) + self.pushButton_deseq2_plot_sankey.setText(_translate("metaX_main", "Plot Sankey")) + self.label_64.setText(_translate("metaX_main", "Tables")) + self.pushButton_deseq2_plot_vocano.setText(_translate("metaX_main", "Plot Volcano")) + self.toolBox_3.setItemText(self.toolBox_3.indexOf(self.page_8), _translate("metaX_main", "Plot")) + self.label_16.setText(_translate("metaX_main", "Width")) + self.label_17.setText(_translate("metaX_main", "Height")) + self.label_14.setText(_translate("metaX_main", "Threshold")) + self.comboBox_deseq2_p_type.setItemText(0, _translate("metaX_main", "padj")) + self.comboBox_deseq2_p_type.setItemText(1, _translate("metaX_main", "pvalue")) + self.label_71.setText(_translate("metaX_main", "Log2FC Range")) + self.label_156.setText(_translate("metaX_main", "Font Size")) + self.label_63.setText(_translate("metaX_main", "-")) + self.toolBox_3.setItemText(self.toolBox_3.indexOf(self.page_9), _translate("metaX_main", "Plotting Parameter")) + self.tabWidget_3.setTabText(self.tabWidget_3.indexOf(self.tab_19), _translate("metaX_main", "DESeq2")) + self.label_55.setText(_translate("metaX_main", "Taxon")) + self.label_tukey_func_num.setText(_translate("metaX_main", "Linked Number: -")) + self.pushButton_show_linked_func.setText(_translate("metaX_main", "Show Linked Func Only")) + self.pushButton_tukey_fresh.setToolTip(_translate("metaX_main", "Restore both lists to their original full items")) + self.pushButton_tukey_fresh.setText(_translate("metaX_main", "Reset Funtion & Taxa Filter")) + self.label_111.setText(_translate("metaX_main", "Stats for")) + self.label_54.setText(_translate("metaX_main", "Function")) + self.comboBox_tukey_by_sum_each.setItemText(0, _translate("metaX_main", "Sum All")) + self.comboBox_tukey_by_sum_each.setItemText(1, _translate("metaX_main", "Each Item")) + self.pushButton_show_linked_taxa.setText(_translate("metaX_main", "Show Linked Taxa Only")) + self.pushButton_plot_tukey.setText(_translate("metaX_main", "Plot TUKEY")) + self.label_tukey_taxa_num.setText(_translate("metaX_main", "Linked Number: -")) + self.pushButton_tukey_test.setText(_translate("metaX_main", "Run TUKEY Test")) + self.label_106.setText(_translate("metaX_main", "Meta")) + self.checkBox_tukey_in_condition.setText(_translate("metaX_main", "In Condition")) + self.tabWidget_3.setTabText(self.tabWidget_3.indexOf(self.tab_4), _translate("metaX_main", "TUKEY TEST")) + self.label_56.setText(_translate("metaX_main", "Table")) + self.pushButton_plot_top_heatmap.setText(_translate("metaX_main", "Plot Top Heatmap")) + self.pushButton_get_top_cross_table.setText(_translate("metaX_main", "Get Top Table")) + self.toolBox_9.setItemText(self.toolBox_9.indexOf(self.page_20), _translate("metaX_main", "Plot")) + self.label_57.setText(_translate("metaX_main", "Sort By")) + self.comboBox_top_heatmap_sort_type.setItemText(0, _translate("metaX_main", "p-value")) + self.comboBox_top_heatmap_sort_type.setItemText(1, _translate("metaX_main", "f-statistic (ANOVA)")) + self.comboBox_top_heatmap_sort_type.setItemText(2, _translate("metaX_main", "t-statistic (T-Test)")) + self.label_180.setText(_translate("metaX_main", "T & ANOVA")) + self.label_59.setText(_translate("metaX_main", "Width")) + self.label_60.setText(_translate("metaX_main", "Height")) + self.label_182.setText(_translate("metaX_main", "General")) + self.label_58.setText(_translate("metaX_main", "Top Number")) + self.label_109.setText(_translate("metaX_main", "Font Size")) self.checkBox_cross_heatmap_col_cluster.setText(_translate("metaX_main", "Col Cluster")) self.checkBox_cross_heatmap_row_cluster.setText(_translate("metaX_main", "Row Cluster")) - self.pushButton_plot_top_heatmap.setText(_translate("metaX_main", "Plot Top Heatmap")) self.label_131.setText(_translate("metaX_main", "Show All Labels")) self.checkBox_top_heatmap_show_all_labels_x.setText(_translate("metaX_main", "X")) self.checkBox_top_heatmap_show_all_labels_y.setText(_translate("metaX_main", "Y")) - self.label_109.setText(_translate("metaX_main", "Font Size")) - self.pushButton_get_top_cross_table.setText(_translate("metaX_main", "Get Top Table")) - self.label_56.setText(_translate("metaX_main", "Table")) - self.label_59.setText(_translate("metaX_main", "Width")) - self.label_60.setText(_translate("metaX_main", "Height")) - self.label_138.setText(_translate("metaX_main", "Log2FC")) + self.label_30.setText(_translate("metaX_main", "P-value")) + self.label_153.setText(_translate("metaX_main", "Rename")) + self.checkBox_top_heatmap_rename_taxa.setText(_translate("metaX_main", " Taxa")) + self.checkBox_top_heatmap_rename_sample.setText(_translate("metaX_main", "Sample")) self.label_141.setText(_translate("metaX_main", "Plot Type")) self.comboBox_cross_3_level_plot_df_type.setItemText(0, _translate("metaX_main", "all_sig")) self.comboBox_cross_3_level_plot_df_type.setItemText(1, _translate("metaX_main", "no_na")) self.comboBox_cross_3_level_plot_df_type.setItemText(2, _translate("metaX_main", "same_trends")) + self.label_181.setText(_translate("metaX_main", "Group-Control DESeq2")) + self.label_138.setText(_translate("metaX_main", "Log2FC")) self.label_139.setText(_translate("metaX_main", "To")) self.checkBox_cross_3_level_plot_remove_zero_col.setText(_translate("metaX_main", "Remove Zero Col")) - self.label_153.setText(_translate("metaX_main", "Rename")) - self.checkBox_top_heatmap_rename_taxa.setText(_translate("metaX_main", " Taxa")) - self.checkBox_top_heatmap_rename_sample.setText(_translate("metaX_main", "Sample")) - self.label_57.setText(_translate("metaX_main", "Sort By")) - self.comboBox_top_heatmap_sort_type.setItemText(0, _translate("metaX_main", "p-value")) - self.comboBox_top_heatmap_sort_type.setItemText(1, _translate("metaX_main", "f-statistic (ANOVA)")) - self.comboBox_top_heatmap_sort_type.setItemText(2, _translate("metaX_main", "t-statistic (T-Test)")) self.label_62.setText(_translate("metaX_main", "Scale By")) self.comboBox_top_heatmap_scale.setItemText(0, _translate("metaX_main", "row")) self.comboBox_top_heatmap_scale.setItemText(1, _translate("metaX_main", "column")) self.comboBox_top_heatmap_scale.setItemText(2, _translate("metaX_main", "None")) self.label_38.setText(_translate("metaX_main", "Theme")) - self.label_58.setText(_translate("metaX_main", "Top Number")) - self.label_30.setText(_translate("metaX_main", "P-value")) + self.toolBox_9.setItemText(self.toolBox_9.indexOf(self.page_21), _translate("metaX_main", "Plotting Parameter")) self.tabWidget_TaxaFuncAnalyzer.setTabText(self.tabWidget_TaxaFuncAnalyzer.indexOf(self.tab_2), _translate("metaX_main", "Cross Test")) - self.label_64.setText(_translate("metaX_main", "Tables")) - self.label_156.setText(_translate("metaX_main", "Font Size")) - self.label_14.setText(_translate("metaX_main", "Threshold")) - self.comboBox_deseq2_p_type.setItemText(0, _translate("metaX_main", "padj")) - self.comboBox_deseq2_p_type.setItemText(1, _translate("metaX_main", "pvalue")) - self.pushButton_deseq2_plot_vocano.setText(_translate("metaX_main", "Plot Volcano")) - self.label_71.setText(_translate("metaX_main", "Min Log2FC")) - self.label_63.setText(_translate("metaX_main", "Max Log2FC")) - self.label_16.setText(_translate("metaX_main", "Width")) - self.label_17.setText(_translate("metaX_main", "Height")) - self.pushButton_deseq2_plot_sankey.setText(_translate("metaX_main", "Plot Sankey")) - self.label_2.setText(_translate("metaX_main", "Group 1")) - self.label_3.setText(_translate("metaX_main", "Group 2")) - self.pushButton_deseq2.setText(_translate("metaX_main", "Run DESeq2")) - self.label_4.setText(_translate("metaX_main", "Table for Analysis")) - self.comboBox_table_for_deseq2.setItemText(0, _translate("metaX_main", "Taxa-Functions")) - self.comboBox_table_for_deseq2.setItemText(1, _translate("metaX_main", "Taxa")) - self.comboBox_table_for_deseq2.setItemText(2, _translate("metaX_main", "Functions")) - self.comboBox_table_for_deseq2.setItemText(3, _translate("metaX_main", "Peptides")) - self.label_147.setText(_translate("metaX_main", "Meta")) - self.checkBox_deseq2_comparing_in_condition.setText(_translate("metaX_main", "In Condition")) - self.tabWidget.setTabText(self.tabWidget.indexOf(self.tab_6), _translate("metaX_main", "FoldChange Calculation ")) - self.label_72.setText(_translate("metaX_main", "Focus List")) - self.radioButton_co_expr_bysample.setText(_translate("metaX_main", "Sample")) - self.checkBox_co_expression_in_condition.setText(_translate("metaX_main", "In Condition")) - self.label_29.setText(_translate("metaX_main", "Table")) - self.comboBox_co_expr_table.setItemText(0, _translate("metaX_main", "Taxa")) - self.comboBox_co_expr_table.setItemText(1, _translate("metaX_main", "Functions")) - self.comboBox_co_expr_table.setItemText(2, _translate("metaX_main", "Taxa-Functions")) - self.comboBox_co_expr_table.setItemText(3, _translate("metaX_main", "Peptides")) - self.label_143.setText(_translate("metaX_main", "Meta")) - self.label_65.setText(_translate("metaX_main", "Method of Correlation")) self.pushButton_co_expr_drop_item.setText(_translate("metaX_main", "Drop Item")) self.pushButton_co_expr_clean_list.setText(_translate("metaX_main", "Clean List")) self.pushButton_co_expr_add_a_list.setToolTip(_translate("metaX_main", "Add a list to the drawing box, make sure there is one item per line.")) self.pushButton_co_expr_add_a_list.setText(_translate("metaX_main", "Add a list")) - self.radioButton_co_expr_bygroup.setText(_translate("metaX_main", "Group")) - self.comboBox_co_expr_corr_method.setItemText(0, _translate("metaX_main", "pearson")) - self.comboBox_co_expr_corr_method.setItemText(1, _translate("metaX_main", "spearman")) - self.label_66.setText(_translate("metaX_main", "Correlation threshold for Plot")) - self.pushButton_co_expr_add_to_list.setToolTip(_translate("metaX_main", "Add selected item to the drawing box")) - self.pushButton_co_expr_add_to_list.setText(_translate("metaX_main", "Add to Focus List")) self.pushButton_co_expr_add_top.setToolTip(_translate("metaX_main", "Add conditionally filtered items to the drawing box")) self.pushButton_co_expr_add_top.setText(_translate("metaX_main", "Add Top to List")) + self.radioButton_co_expr_bysample.setText(_translate("metaX_main", "Sample")) + self.checkBox_co_expression_in_condition.setText(_translate("metaX_main", "In Condition")) self.label_73.setText(_translate("metaX_main", "Select Top")) self.label_74.setText(_translate("metaX_main", "Sort by")) self.comboBox_co_expr_top_by.setItemText(0, _translate("metaX_main", "Total Intensity")) @@ -4784,40 +5605,58 @@ def retranslateUi(self, metaX_main): self.comboBox_co_expr_top_by.setItemText(9, _translate("metaX_main", "Deseq2-up(log2FC)")) self.comboBox_co_expr_top_by.setItemText(10, _translate("metaX_main", "Deseq2-down(log2FC)")) self.checkBox_co_expr_top_filtered.setText(_translate("metaX_main", "Filter with threshold")) - self.label_125.setText(_translate("metaX_main", "Height")) - self.label_124.setText(_translate("metaX_main", "Width")) + self.radioButton_co_expr_bygroup.setText(_translate("metaX_main", "Group")) + self.label_29.setText(_translate("metaX_main", "Table")) + self.comboBox_co_expr_table.setItemText(0, _translate("metaX_main", "Taxa")) + self.comboBox_co_expr_table.setItemText(1, _translate("metaX_main", "Functions")) + self.comboBox_co_expr_table.setItemText(2, _translate("metaX_main", "Taxa-Functions")) + self.comboBox_co_expr_table.setItemText(3, _translate("metaX_main", "Peptides")) + self.label_143.setText(_translate("metaX_main", "Meta")) + self.label_72.setText(_translate("metaX_main", "Focus List")) + self.pushButton_co_expr_add_to_list.setToolTip(_translate("metaX_main", "Add selected item to the drawing box")) + self.pushButton_co_expr_add_to_list.setText(_translate("metaX_main", "Add to Focus List")) + self.pushButton_co_expr_plot.setText(_translate("metaX_main", "Plot Co-Expression Network")) + self.pushButton_co_expr_heatmap_plot.setText(_translate("metaX_main", "Plot Co-Expression Heatmap")) + self.toolBox_5.setItemText(self.toolBox_5.indexOf(self.page_12), _translate("metaX_main", "Plotting")) + self.label_190.setText(_translate("metaX_main", "Show All Labels")) + self.checkBox_corr_hetatmap_show_all_labels_x.setText(_translate("metaX_main", "X")) + self.checkBox_corr_hetatmap_show_all_labels_y.setText(_translate("metaX_main", "Y")) + self.checkBox_co_expr_rename_taxa.setText(_translate("metaX_main", "Rename Taxa")) + self.label_66.setText(_translate("metaX_main", "Threshold for Plot")) + self.label_65.setText(_translate("metaX_main", "Method of Correlation")) + self.comboBox_co_expr_corr_method.setItemText(0, _translate("metaX_main", "pearson")) + self.comboBox_co_expr_corr_method.setItemText(1, _translate("metaX_main", "spearman")) self.label_162.setText(_translate("metaX_main", "Font Size")) self.checkBox_co_expr_show_label.setText(_translate("metaX_main", "Show Labels")) - self.checkBox_co_expr_rename_taxa.setText(_translate("metaX_main", "Rename Taxa")) + self.label_191.setText(_translate("metaX_main", "Theme")) + self.label_125.setText(_translate("metaX_main", "Height")) + self.label_124.setText(_translate("metaX_main", "Width")) + self.label_189.setText(_translate("metaX_main", "Heatmap")) + self.label_187.setText(_translate("metaX_main", "General")) + self.label_188.setText(_translate("metaX_main", "Network")) self.checkBox_co_expr_plot_list_only.setText(_translate("metaX_main", "Plot List Only")) - self.pushButton_co_expr_plot.setText(_translate("metaX_main", "Plot Co-Expression Network")) - self.tabWidget.setTabText(self.tabWidget.indexOf(self.tab_5), _translate("metaX_main", "Co-Expression Networks")) - self.label_93.setText(_translate("metaX_main", "Select Cluster")) + self.toolBox_5.setItemText(self.toolBox_5.indexOf(self.page_13), _translate("metaX_main", "Plotting Parameter")) + self.tabWidget.setTabText(self.tabWidget.indexOf(self.tab_5), _translate("metaX_main", "Co-Expression")) self.pushButton_trends_get_trends_table.setText(_translate("metaX_main", "Get ClusterTable")) + self.label_95.setText(_translate("metaX_main", "Cluster Number")) + self.label_93.setText(_translate("metaX_main", "Select Cluster")) + self.pushButton_trends_plot_trends.setText(_translate("metaX_main", "Plot Trends")) + self.pushButton_trends_plot_interactive_line.setText(_translate("metaX_main", "Plot Interactive Line")) + self.label_145.setText(_translate("metaX_main", "Calculate Cluster")) + self.label_165.setText(_translate("metaX_main", "Plot Specific Cluster")) + self.toolBox_6.setItemText(self.toolBox_6.indexOf(self.page_14), _translate("metaX_main", "Plot")) + self.label_174.setText(_translate("metaX_main", "General")) + self.label_175.setText(_translate("metaX_main", "Specific cluster")) + self.checkBox_get_trends_cluster_intensity.setText(_translate("metaX_main", "Get Intnsity Results")) + self.label_158.setText(_translate("metaX_main", "Font Size")) self.label_92.setText(_translate("metaX_main", "Height")) + self.checkBox_trends_plot_interactive_show_legend.setText(_translate("metaX_main", "Show Legend")) self.checkBox_trends_plot_interactive_plot_samples.setText(_translate("metaX_main", "Plot Samples")) - self.radioButton_trends_group.setText(_translate("metaX_main", "Group")) - self.label_97.setText(_translate("metaX_main", "Width")) - self.pushButton_trends_plot_interactive_line.setText(_translate("metaX_main", "Plot Interactive Line")) - self.pushButton_trends_drop_item.setText(_translate("metaX_main", "Drop Item")) self.checkBox_trends_plot_interactive_rename_taxa.setText(_translate("metaX_main", "Simplify Taxa Names")) - self.checkBox_get_trends_cluster_intensity.setText(_translate("metaX_main", "Get Intnsity Results")) - self.pushButton_trends_add_top.setToolTip(_translate("metaX_main", "Add conditionally filtered items to the drawing box")) - self.pushButton_trends_add_top.setText(_translate("metaX_main", "Add Top to List")) - self.label_96.setText(_translate("metaX_main", "Table")) - self.comboBox_trends_table.setItemText(0, _translate("metaX_main", "Taxa")) - self.comboBox_trends_table.setItemText(1, _translate("metaX_main", "Functions")) - self.comboBox_trends_table.setItemText(2, _translate("metaX_main", "Taxa-Functions")) - self.comboBox_trends_table.setItemText(3, _translate("metaX_main", "Peptides")) - self.label_148.setText(_translate("metaX_main", "Meta")) - self.label_100.setText(_translate("metaX_main", "Select for plotting")) - self.pushButton_trends_clean_list.setText(_translate("metaX_main", "Clean List")) + self.label_97.setText(_translate("metaX_main", "Width")) + self.toolBox_6.setItemText(self.toolBox_6.indexOf(self.page_15), _translate("metaX_main", "Plotting Parameter")) self.pushButton_trends_add.setToolTip(_translate("metaX_main", "Add selected item to the drawing box")) self.pushButton_trends_add.setText(_translate("metaX_main", "Add to List")) - self.radioButton_trends_sample.setText(_translate("metaX_main", "Sample")) - self.pushButton_trends_plot_trends.setText(_translate("metaX_main", "Plot Trends")) - self.checkBox_trends_plot_interactive_show_legend.setText(_translate("metaX_main", "Show Legend")) - self.label_95.setText(_translate("metaX_main", "Cluster Number")) self.label_99.setText(_translate("metaX_main", "Select Top")) self.label_91.setText(_translate("metaX_main", "Sort by")) self.comboBox_trends_top_by.setItemText(0, _translate("metaX_main", "Total Intensity")) @@ -4832,41 +5671,62 @@ def retranslateUi(self, metaX_main): self.comboBox_trends_top_by.setItemText(9, _translate("metaX_main", "Deseq2-up(log2FC)")) self.comboBox_trends_top_by.setItemText(10, _translate("metaX_main", "Deseq2-down(log2FC)")) self.checkBox_trends_top_filtered.setText(_translate("metaX_main", "Filter with threshold")) - self.pushButton_trends_add_a_list.setToolTip(_translate("metaX_main", "Add a list to the drawing box, make sure there is one item per line.")) - self.pushButton_trends_add_a_list.setText(_translate("metaX_main", "Add a list")) - self.label_158.setText(_translate("metaX_main", "Font Size")) + self.pushButton_trends_add_top.setToolTip(_translate("metaX_main", "Add conditionally filtered items to the drawing box")) + self.pushButton_trends_add_top.setText(_translate("metaX_main", "Add Top to List")) self.label_98.setText(_translate("metaX_main", "List for Plotting")) self.checkBox_trends_in_condition.setText(_translate("metaX_main", "In Condition")) + self.label_100.setText(_translate("metaX_main", "Select for plotting")) + self.radioButton_trends_sample.setText(_translate("metaX_main", "Sample")) + self.radioButton_trends_group.setText(_translate("metaX_main", "Group")) + self.pushButton_trends_drop_item.setText(_translate("metaX_main", "Drop Item")) + self.pushButton_trends_clean_list.setText(_translate("metaX_main", "Clean List")) + self.pushButton_trends_add_a_list.setToolTip(_translate("metaX_main", "Add a list to the drawing box, make sure there is one item per line.")) + self.pushButton_trends_add_a_list.setText(_translate("metaX_main", "Add A list")) + self.label_96.setText(_translate("metaX_main", "Table")) + self.comboBox_trends_table.setItemText(0, _translate("metaX_main", "Taxa")) + self.comboBox_trends_table.setItemText(1, _translate("metaX_main", "Functions")) + self.comboBox_trends_table.setItemText(2, _translate("metaX_main", "Taxa-Functions")) + self.comboBox_trends_table.setItemText(3, _translate("metaX_main", "Peptides")) + self.label_148.setText(_translate("metaX_main", "Meta")) self.tabWidget.setTabText(self.tabWidget.indexOf(self.tab_15), _translate("metaX_main", "Expression Trends")) - self.tabWidget_TaxaFuncAnalyzer.setTabText(self.tabWidget_TaxaFuncAnalyzer.indexOf(self.tab_diff_stats), _translate("metaX_main", "Differential analysis")) + self.tabWidget_TaxaFuncAnalyzer.setTabText(self.tabWidget_TaxaFuncAnalyzer.indexOf(self.tab_diff_stats), _translate("metaX_main", "Expression Analysis")) + self.radioButton_tflink_sample.setText(_translate("metaX_main", "Sample")) + self.label_18.setText(_translate("metaX_main", "Function")) + self.label_19.setText(_translate("metaX_main", "Taxa")) + self.radioButton_tflink_group.setText(_translate("metaX_main", "Group")) + self.checkBox_tflink_in_condition.setText(_translate("metaX_main", "In Condition")) + self.label_149.setText(_translate("metaX_main", "Meta")) + self.label_others_func_num.setText(_translate("metaX_main", "Linked Number: -")) + self.pushButton_others_show_linked_taxa.setText(_translate("metaX_main", "Show Linked Taxa Only")) + self.label_others_taxa_num.setText(_translate("metaX_main", "Linked Number: -")) + self.pushButton_others_show_linked_func.setText(_translate("metaX_main", "Show Linked Func Only")) + self.pushButton_others_plot_heatmap.setText(_translate("metaX_main", "Plot Heatmap")) + self.pushButton_others_plot_line.setText(_translate("metaX_main", "Plot Bar")) + self.pushButton_others_get_intensity_matrix.setText(_translate("metaX_main", "Get Intensity Table")) + self.toolBox_8.setItemText(self.toolBox_8.indexOf(self.page_18), _translate("metaX_main", "Plot")) + self.label_176.setText(_translate("metaX_main", "General")) + self.label_61.setText(_translate("metaX_main", "Theme")) + self.label_177.setText(_translate("metaX_main", "Heatmap")) + self.checkBox_tflink_hetatmap_col_cluster.setText(_translate("metaX_main", "Col Cluster")) self.label_23.setText(_translate("metaX_main", "Scale")) self.comboBox_tflink_hetatmap_scale.setItemText(0, _translate("metaX_main", "row")) self.comboBox_tflink_hetatmap_scale.setItemText(1, _translate("metaX_main", "column")) self.comboBox_tflink_hetatmap_scale.setItemText(2, _translate("metaX_main", "None")) - self.label_61.setText(_translate("metaX_main", "Theme")) - self.label_132.setText(_translate("metaX_main", "Show All Labels")) - self.checkBox_tflink_bar_show_all_labels_x.setText(_translate("metaX_main", "X")) - self.checkBox_tflink_bar_show_all_labels_y.setText(_translate("metaX_main", "Y")) - self.label_120.setText(_translate("metaX_main", "Rename")) - self.checkBox_tflink_hetatmap_rename_sample.setText(_translate("metaX_main", " Samples")) - self.checkBox_tflink_hetatmap_rename_taxa.setText(_translate("metaX_main", "Taxa")) self.checkBox_tflink_bar_plot_percent.setText(_translate("metaX_main", "Bar Percent")) - self.label_18.setText(_translate("metaX_main", "Function")) - self.label_21.setText(_translate("metaX_main", "Width")) - self.label_20.setText(_translate("metaX_main", "Height")) + self.checkBox_tflink_plot_mean.setText(_translate("metaX_main", "Plot Mean")) + self.label_178.setText(_translate("metaX_main", "Bar")) self.label_110.setText(_translate("metaX_main", "Label Font Size")) - self.checkBox_tflink_hetatmap_col_cluster.setText(_translate("metaX_main", "Col Cluster")) - self.checkBox_tflink_hetatmap_row_cluster.setText(_translate("metaX_main", "Row Cluster")) self.checkBox_tflink_bar_show_legend.setText(_translate("metaX_main", "Show Legend")) - self.checkBox_tflink_plot_mean.setText(_translate("metaX_main", "Plot Mean")) - self.label_149.setText(_translate("metaX_main", "Meta")) - self.checkBox_tflink_in_condition.setText(_translate("metaX_main", "In Condition")) - self.radioButton_tflink_sample.setText(_translate("metaX_main", "Sample")) - self.pushButton_others_get_intensity_matrix.setText(_translate("metaX_main", "Get Intensity Matrix")) - self.pushButton_others_plot_heatmap.setText(_translate("metaX_main", "Plot Heatmap")) - self.pushButton_others_plot_line.setText(_translate("metaX_main", "Plot Bar")) - self.label_19.setText(_translate("metaX_main", "Taxa")) - self.radioButton_tflink_group.setText(_translate("metaX_main", "Group")) + self.checkBox_tflink_hetatmap_row_cluster.setText(_translate("metaX_main", "Row Cluster")) + self.label_21.setText(_translate("metaX_main", "Width")) + self.label_20.setText(_translate("metaX_main", "Height")) + self.label_120.setText(_translate("metaX_main", "Rename")) + self.checkBox_tflink_hetatmap_rename_sample.setText(_translate("metaX_main", " Samples")) + self.checkBox_tflink_hetatmap_rename_taxa.setText(_translate("metaX_main", "Taxa")) + self.label_132.setText(_translate("metaX_main", "Show All Labels")) + self.checkBox_tflink_bar_show_all_labels_x.setText(_translate("metaX_main", "X")) + self.checkBox_tflink_bar_show_all_labels_y.setText(_translate("metaX_main", "Y")) + self.toolBox_8.setItemText(self.toolBox_8.indexOf(self.page_19), _translate("metaX_main", "Plotting Parameter")) self.label_75.setText(_translate("metaX_main", "Filter Top")) self.label_76.setText(_translate("metaX_main", "By")) self.comboBox_tflink_top_by.setItemText(0, _translate("metaX_main", "Total Intensity")) @@ -4885,30 +5745,23 @@ def retranslateUi(self, metaX_main): self.pushButton_tflink_filter.setText(_translate("metaX_main", "Filter")) self.pushButton_others_fresh_taxa_func.setToolTip(_translate("metaX_main", "Restore both lists to their original full items")) self.pushButton_others_fresh_taxa_func.setText(_translate("metaX_main", "Reset List")) - self.label_others_func_num.setText(_translate("metaX_main", "Linked Number: -")) - self.pushButton_others_show_linked_taxa.setText(_translate("metaX_main", "Show Linked Taxa Only")) - self.label_others_taxa_num.setText(_translate("metaX_main", "Linked Number: -")) - self.pushButton_others_show_linked_func.setText(_translate("metaX_main", "Show Linked Func Only")) self.tabWidget_2.setTabText(self.tabWidget_2.indexOf(self.tab_8), _translate("metaX_main", "Taxa-Func Link")) - self.pushButton_tfnet_drop_item.setText(_translate("metaX_main", "Drop Item")) - self.pushButton_tfnet_add_top.setToolTip(_translate("metaX_main", "Add conditionally filtered items to the drawing box")) - self.pushButton_tfnet_add_top.setText(_translate("metaX_main", "Add Top to List")) - self.radioButton_network_bysample.setText(_translate("metaX_main", "Sample")) - self.radioButton_network_bygroup.setText(_translate("metaX_main", "Group")) - self.checkBox_tf_link_net_show_label.setText(_translate("metaX_main", "Show Labels")) - self.checkBox_tf_link_net_rename_taxa.setText(_translate("metaX_main", "Raname Taxa")) - self.pushButton_tfnet_clean_list.setText(_translate("metaX_main", "Clean List")) - self.label_49.setText(_translate("metaX_main", "Table")) - self.comboBox_tfnet_table.setItemText(0, _translate("metaX_main", "Taxa")) - self.comboBox_tfnet_table.setItemText(1, _translate("metaX_main", "Functions")) - self.comboBox_tfnet_table.setItemText(2, _translate("metaX_main", "Taxa-Functions")) - self.label_150.setText(_translate("metaX_main", "Meta")) self.pushButton_tfnet_add_to_list.setToolTip(_translate("metaX_main", "Add selected item to the drawing box")) self.pushButton_tfnet_add_to_list.setText(_translate("metaX_main", "Add to Focus List")) + self.radioButton_network_bysample.setText(_translate("metaX_main", "Sample")) + self.pushButton_tfnet_add_top.setToolTip(_translate("metaX_main", "Add conditionally filtered items to the drawing box")) + self.pushButton_tfnet_add_top.setText(_translate("metaX_main", "Add Top to List")) + self.pushButton_plot_network.setText(_translate("metaX_main", "Plot Ntework")) + self.toolBox_7.setItemText(self.toolBox_7.indexOf(self.page_16), _translate("metaX_main", "Plot")) self.label_50.setText(_translate("metaX_main", "Width")) self.label_51.setText(_translate("metaX_main", "Height")) - self.checkBox_tfnetwork_in_condition.setText(_translate("metaX_main", "In Condition")) + self.checkBox_tf_link_net_plot_list_only.setText(_translate("metaX_main", "Plot List Only")) + self.checkBox_tf_link_net_plot_list_only_no_link.setText(_translate("metaX_main", "Without Links")) + self.checkBox_tf_link_net_show_label.setText(_translate("metaX_main", "Show Labels")) + self.checkBox_tf_link_net_rename_taxa.setText(_translate("metaX_main", "Raname Taxa")) self.label_163.setText(_translate("metaX_main", "Font Size")) + self.toolBox_7.setItemText(self.toolBox_7.indexOf(self.page_17), _translate("metaX_main", "Plotting Parameter")) + self.radioButton_network_bygroup.setText(_translate("metaX_main", "Group")) self.label_78.setText(_translate("metaX_main", "Select Top")) self.label_79.setText(_translate("metaX_main", "Sort by")) self.comboBox_tfnet_top_by.setItemText(0, _translate("metaX_main", "Total Intensity")) @@ -4923,12 +5776,17 @@ def retranslateUi(self, metaX_main): self.comboBox_tfnet_top_by.setItemText(9, _translate("metaX_main", "Deseq2-up(log2FC)")) self.comboBox_tfnet_top_by.setItemText(10, _translate("metaX_main", "Deseq2-down(log2FC)")) self.checkBox_tfnet_top_filtered.setText(_translate("metaX_main", "Filter with threshold")) - self.pushButton_plot_network.setText(_translate("metaX_main", "Plot Ntework")) self.label_77.setText(_translate("metaX_main", "Focus List")) + self.pushButton_tfnet_drop_item.setText(_translate("metaX_main", "Drop Item")) + self.pushButton_tfnet_clean_list.setText(_translate("metaX_main", "Clean List")) self.pushButton_tfnet_add_a_list.setToolTip(_translate("metaX_main", "Add a list to the drawing box, make sure there is one item per line.")) self.pushButton_tfnet_add_a_list.setText(_translate("metaX_main", "Add a list")) - self.checkBox_tf_link_net_plot_list_only.setText(_translate("metaX_main", "Plot List Only")) - self.checkBox_tf_link_net_plot_list_only_no_link.setText(_translate("metaX_main", "Without Links")) + self.checkBox_tfnetwork_in_condition.setText(_translate("metaX_main", "In Condition")) + self.label_49.setText(_translate("metaX_main", "Table")) + self.comboBox_tfnet_table.setItemText(0, _translate("metaX_main", "Taxa")) + self.comboBox_tfnet_table.setItemText(1, _translate("metaX_main", "Functions")) + self.comboBox_tfnet_table.setItemText(2, _translate("metaX_main", "Taxa-Functions")) + self.label_150.setText(_translate("metaX_main", "Meta")) self.tabWidget_2.setTabText(self.tabWidget_2.indexOf(self.tab_9), _translate("metaX_main", "Taxa-Func Network")) self.tabWidget_TaxaFuncAnalyzer.setTabText(self.tabWidget_TaxaFuncAnalyzer.indexOf(self.tab_others_stats), _translate("metaX_main", "Taxa-Func Link")) self.pushButton_view_table.setText(_translate("metaX_main", "View Table")) diff --git a/metax/peptide_annotator/peptable_annotator.py b/metax/peptide_annotator/peptable_annotator.py index 48ade6a..1994076 100644 --- a/metax/peptide_annotator/peptable_annotator.py +++ b/metax/peptide_annotator/peptable_annotator.py @@ -148,7 +148,7 @@ def remove_reversed(self, df): print('Removing reversed proteins...') print(f'Original shape: {df.shape}') try: - df = df[~df['Proteins'].str.contains('REV_')] + df = df[~df[self.protein_col].str.contains('REV_')] print(f'After removing reversed proteins: {df.shape}') except Exception as e: print('Error: removing reversed proteins failed!') @@ -186,9 +186,9 @@ def run_annotate(self): return df_res if __name__ == '__main__': - final_peptides_path = 'peptides.tsv' + db_path = 'UHGP.db' + final_peptides_path = 'peptide.tsv' output_path = 'OTF.tsv' - db_path = 'metax.db' threshold = 1 t0 = time.time() @@ -199,8 +199,8 @@ def run_annotate(self): threshold=threshold, genome_mode=True, protein_separator=';', - protein_genome_separator = '-', - protein_col='Proteins', + protein_genome_separator = '_', + protein_col='final_proteins', peptide_col='Sequence', sample_col_prefix='CHFL' diff --git a/metax/taxafunc_analyzer/analyzer.py b/metax/taxafunc_analyzer/analyzer.py index 146668e..f0b8f1a 100644 --- a/metax/taxafunc_analyzer/analyzer.py +++ b/metax/taxafunc_analyzer/analyzer.py @@ -409,7 +409,28 @@ def replace_if_two_index(self, df): df = df.drop(df.columns[:2], axis=1) return df - def add_group_name_for_sample(self, df: pd.DataFrame) -> tuple: + def add_group_name_for_sample(self, df: pd.DataFrame) -> tuple[pd.DataFrame, list[str]]: + ''' + Adds group names to sample names in the given DataFrame. + + Parameters: + df (pd.DataFrame): The DataFrame containing the samples. + + Returns: + tuple[pd.DataFrame, list[str]]: A tuple containing the modified DataFrame with updated sample names and a list of group names. + + Example: + >>> df = pd.DataFrame({'Sample1': [1, 2, 3], 'Sample2': [4, 5, 6]}) + >>> analyzer = Analyzer() + >>> modified_df, group_names = analyzer.add_group_name_for_sample(df) + >>> modified_df + Sample1 (Group1) Sample2 (Group2) + 0 1 4 + 1 2 5 + 2 3 6 + >>> group_names + ['Group1', 'Group2'] + ''' sample_list = df.columns.tolist() new_sample_list = [] @@ -766,6 +787,11 @@ def get_df(self, table_name:str = 'taxa'): "taxa_func": "taxa_func_df", "func_taxa": "func_taxa_df", "custom": "custom_df", + "functions": "func_df", + "taxa-functions": "taxa_func_df", + "peptides": "peptide_df", + "proteins": "protein_df", + } dft = getattr(self, name_dict[table_name]) # remove peptide_num column if exists diff --git a/metax/taxafunc_analyzer/analyzer_utils/basic_stats.py b/metax/taxafunc_analyzer/analyzer_utils/basic_stats.py index 3a6cd1f..a88243b 100644 --- a/metax/taxafunc_analyzer/analyzer_utils/basic_stats.py +++ b/metax/taxafunc_analyzer/analyzer_utils/basic_stats.py @@ -107,4 +107,75 @@ def get_stats_func_prop(self, func_name:str) -> pd.DataFrame: df_prop['freq'] = (df_prop['n']/df_prop['n'].sum()*100).round(2) df_prop['label'] = df_prop['prop'] + \ ' (' + df_prop['freq'].astype(str) + '%)' - return df_prop \ No newline at end of file + return df_prop + + + def get_correlation(self, df_type: str, + sample_list: list[str]|None = None, + focus_list: list[str]|None = None, + plot_list_only: bool = False, + rename_taxa: bool = False, + method='pearson') -> pd.DataFrame: + ''' + Get correlation between items in a dataframe. + `df_type`: str: 'taxa', 'func', 'taxa_func', 'func_taxa', 'custom' + `sample_list`: a list of samples to calculate correlation + `plot_list_only`: bool: if True, only return the list of samples that can be plotted + `method`: str: 'pearson', 'spearman' + ''' + df = self.tfa.get_df(df_type) + df = self.tfa.replace_if_two_index(df) + if sample_list: + df = df[sample_list] + if plot_list_only: + # extrat the row that index is in the focus_list + if focus_list and len(focus_list) > 0: + df = df.loc[focus_list] + if rename_taxa: + df = self.tfa.rename_taxa(df) + + corr = df.T.corr(method=method) + return corr + + def get_combined_sub_meta_df( + self, + df: pd.DataFrame, + sub_meta: str, + rename_sample: bool = False, + plot_mean: bool = False, + ) -> tuple[pd.DataFrame, list[str]]: + """ + Combines the sub-meta information with the main meta information in the given DataFrame and returns the combined DataFrame and a list of sub-meta groups. + + Args: + df (pd.DataFrame): The DataFrame containing the main meta information. + sub_meta (str): The sub-meta information to be combined with the main meta information. + rename_sample (bool, optional): Whether to rename the samples in the DataFrame. Defaults to False. + plot_mean (bool, optional): Whether to plot the mean values. Defaults to False. + + Returns: + tuple[pd.DataFrame, list[str]]: A tuple containing the combined DataFrame and a list of sub-meta groups. + """ + if sub_meta != 'None': + + sample_groups = {sample: self.tfa.get_group_of_a_sample(sample, self.tfa.meta_name) for sample in df.columns} + sub_groups = {sample: self.tfa.get_group_of_a_sample(sample, sub_meta) for sample in df.columns} + + # Combine samples with the same meta and sub-meta, and calculate the mean value + grouped_data = df.T.groupby([sample_groups, sub_groups]).mean().T + + # group_list is the sub-meta group + group_list = [i[1] for i in grouped_data.columns] if not plot_mean else grouped_data.columns.tolist() + + # Convert multi-index to single index + grouped_data.columns = ['_'.join(col).strip() for col in grouped_data.columns.values] + + df = grouped_data + + else: + if rename_sample: + df, group_list = self.tfa.add_group_name_for_sample(df) + else: + group_list = [self.tfa.get_group_of_a_sample(i) for i in df.columns] if not plot_mean else df.columns.tolist() + + return df, group_list \ No newline at end of file diff --git a/metax/taxafunc_analyzer/analyzer_utils/sum_protein_intensity.py b/metax/taxafunc_analyzer/analyzer_utils/sum_protein_intensity.py index 55bd907..5a02486 100644 --- a/metax/taxafunc_analyzer/analyzer_utils/sum_protein_intensity.py +++ b/metax/taxafunc_analyzer/analyzer_utils/sum_protein_intensity.py @@ -29,7 +29,14 @@ def __init__(self, taxa_func_analyzer): self._init_dicts() self.greedy_method = None # only used for razor method - + def check_protein_col(self): + # if any NA, '', or empty in the protein column, raise error + if self.df[self.tfa.protein_col_name].isnull().values.any(): + raise ValueError(f'There are NA values in {self.tfa.protein_col_name} column') + + if (self.df[self.tfa.protein_col_name].str.strip() == '').any(): + raise ValueError(f'There are empty values in {self.tfa.protein_col_name} column') + def sum_protein_intensity(self, method='razor', by_sample=False, rank_method='unique_counts', greedy_method='heap'): if method not in ['razor', 'anti-razor', 'rank']: @@ -39,6 +46,7 @@ def sum_protein_intensity(self, method='razor', by_sample=False, rank_method='un self.rank_method = rank_method self.greedy_method = greedy_method + self.check_protein_col() if method == 'rank': print(f"\n-------------Start to sum protein intensity using method: [{method}] by_sample: [{by_sample}] rank_method: [{rank_method}]-------------") diff --git a/metax/taxafunc_ploter/basic_plot.py b/metax/taxafunc_ploter/basic_plot.py index 4b5ea17..4f597d4 100644 --- a/metax/taxafunc_ploter/basic_plot.py +++ b/metax/taxafunc_ploter/basic_plot.py @@ -359,6 +359,7 @@ def plot_corr_sns( font_size=10, show_all_labels=(False, False), theme: str = None, + cmap: str = "Auto", rename_sample: bool = False, linkage_method: str = "average", distance_metric: str = "euclidean", @@ -369,6 +370,10 @@ def plot_corr_sns( else: group_list = [self.tfa.get_group_of_a_sample(i) for i in dft.columns] + if cmap == 'Auto': + cmap = 'RdYlBu_r' + else: + cmap = cmap color_list = self.assign_colors(group_list) corr = dft.corr() @@ -379,7 +384,7 @@ def plot_corr_sns( plt.style.use(theme) else: sns.set_theme(style="ticks") - sns_params = {"linewidths":.01, "cmap":'coolwarm', "cbar_kws":{ "shrink": 0.5}, + sns_params = {"linewidths":.01, "cmap":cmap, "cbar_kws":{ "shrink": 0.5}, 'col_cluster':True if cluster else False, 'row_cluster':True if cluster else False, 'method':linkage_method, @@ -579,37 +584,53 @@ def create_df_plot_group(df, sub_meta): + def plot_items_corr_heatmap( + self, + df, + title_name="Table", + cluster=False, + cmap = 'RdYlBu_r', + width=10, + height=8, + font_size=10, + show_all_labels=(False, False), + linkage_method: str = "average", + distance_metric: str = "euclidean", + ): + corr = df.copy() + # mask = np.triu(np.ones_like(corr, dtype=bool)) - #! Deprecated function, use plot_taxa_stats_pie chart instead - # def plot_taxa_stats_bar(self, theme:str = 'Auto', res_type = 'pic', font_size = 12): - # df = self.tfa.BasicStats.get_stats_peptide_num_in_taxa() - # # if 'not_found' is 0, then remove it - # if df[df['LCA_level'] == 'notFound']['count'].values[0] == 0: - # df = df[df['LCA_level'] != 'notFound'] - - # if theme is not None and theme != 'Auto': - # plt.style.use(theme) - # else: - # custom_params = {"axes.spines.right": False, "axes.spines.top": False} - - # # plt.figure(figsize=(8, 6)) - # sns.set_theme(style="ticks", rc=custom_params) + try: + if cmap == 'Auto': + cmap = 'RdYlBu_r' + else: + cmap = cmap + + sns_params = {"linewidths":.01, "cmap":cmap, "cbar_kws":{ "shrink": 0.5}, + 'col_cluster':True if cluster else False, + 'row_cluster':True if cluster else False, + 'method':linkage_method, + 'metric':distance_metric, + "linecolor":(0/255, 0/255, 0/255, 0.01), "dendrogram_ratio":(.1, .2), + "figsize":(width, height), "xticklabels":True if show_all_labels[0] else "auto", + "yticklabels":True if show_all_labels[1] else 'auto'} + fig = sns.clustermap(corr, **sns_params) - # plt.figure(figsize=(8, 6)) if res_type == 'show' else plt.figure() + fig.ax_col_dendrogram.set_title(f'Correlation of {title_name}', fontsize=font_size+2, fontweight='bold') + ax = fig.ax_heatmap + ax.set_xticklabels(ax.get_xticklabels(), fontsize=font_size, rotation=90) + ax.set_yticklabels(ax.get_yticklabels(), fontsize=font_size, rotation=0) - # ax = sns.barplot(data=df, x='LCA_level', y='count', hue='label',dodge=False) - # for i in ax.containers: - # ax.bar_label(i, fontsize=font_size) - # ax.set_title('Number of identified peptides in different taxa level', fontsize=font_size+2, fontweight='bold') - # ax.set_xlabel('Taxa level') - # ax.set_ylabel('Number of peptides') - # ax.set_xticklabels(ax.get_xticklabels(), fontsize=font_size) - # ax.set_yticklabels(ax.get_yticklabels(), fontsize=font_size) - # ax.legend(title='Taxa level (frequency)', ncol=2) - # if res_type == 'show': - # plt.tight_layout() - # plt.show() - # else: - # plt.close() - # return ax # use "pic = BasicPlot(self.tfa).plot_taxa_stats().get_figure()" to get the figure object in GUI script + cbar = fig.ax_heatmap.collections[0].colorbar + cbar.set_label("Correlation", rotation=90, labelpad=1) + cbar.ax.yaxis.set_ticks_position('left') + cbar.ax.yaxis.set_label_position('left') + plt.subplots_adjust(left=0.03, bottom=0.095, right=0.5, top=0.96, wspace=0.01, hspace=0.01) + plt.tight_layout() + plt.show() + # plt.close() + return ax + except Exception as e: + plt.close('all') + raise e diff --git a/metax/taxafunc_ploter/heatmap_plot.py b/metax/taxafunc_ploter/heatmap_plot.py index cb47ebf..303d3b1 100644 --- a/metax/taxafunc_ploter/heatmap_plot.py +++ b/metax/taxafunc_ploter/heatmap_plot.py @@ -293,6 +293,9 @@ def plot_basic_heatmap(self, df, title = 'Heatmap',fig_size:tuple|None = None, show_all_labels:tuple = (False, False), rename_sample:bool = True, plot_mean:bool = False, sub_meta: str = "None" ): + ''' + sub_meta is higher plot_mean, if sub_meta provided, plot_mean is False + ''' if plot_mean and sub_meta == 'None': # if sub_meta is not None, plot_mean is False df = self.tfa.BasicStats.get_stats_mean_df_by_group(df) @@ -311,8 +314,6 @@ def plot_basic_heatmap(self, df, title = 'Heatmap',fig_size:tuple|None = None, scale = scale_map.get(scale) mat = df.copy() - meta_df = self.tfa.meta_df - meta_name = self.tfa.meta_name # if index is Taxon, rename index if rename_taxa: @@ -323,31 +324,7 @@ def plot_basic_heatmap(self, df, title = 'Heatmap',fig_size:tuple|None = None, if fig_size is None: fig_size = (30,30) - if sub_meta != 'None': - # group_list = ( - # [self.tfa.get_group_of_a_sample(i, sub_meta) for i in mat.columns] - # if not plot_mean - # else mat.columns.tolist() - # ) - sample_groups = {sample: self.tfa.get_group_of_a_sample(sample, self.tfa.meta_name) for sample in mat.columns} - sub_groups = {sample: self.tfa.get_group_of_a_sample(sample, sub_meta) for sample in mat.columns} - - # 合并同一meta和submeta的样本,计算平均值 - grouped_data = mat.T.groupby([sample_groups, sub_groups]).mean().T - - # group_list is the sub_meta group - group_list = [i[1] for i in grouped_data.columns] if not plot_mean else grouped_data.columns.tolist() - - # convert multi-index to single index - grouped_data.columns = ['_'.join(col).strip() for col in grouped_data.columns.values] - - mat = grouped_data - - else: - if rename_sample: - mat, group_list = self.tfa.add_group_name_for_sample(mat) - else: - group_list = [self.tfa.get_group_of_a_sample(i) for i in mat.columns] if not plot_mean else mat.columns.tolist() + mat, group_list = self.tfa.BasicStats.get_combined_sub_meta_df(df=mat, sub_meta=sub_meta, rename_sample=rename_sample, plot_mean=plot_mean) color_list = self.assign_colors(group_list) diff --git a/metax/taxafunc_ploter/network_plot.py b/metax/taxafunc_ploter/network_plot.py index a93c0d4..d0ccce1 100644 --- a/metax/taxafunc_ploter/network_plot.py +++ b/metax/taxafunc_ploter/network_plot.py @@ -149,13 +149,12 @@ def create_nodes_links( df = df.loc[df['taxa'].isin(focus_list) | df['function'].isin(focus_list)] print(f"New df shape: {df.shape}") - # taxa_sum = df.groupby('taxa')['sum'].sum().to_dict() taxa_sum = df[df['taxa'] != ""].groupby('taxa')['sum'].sum().to_dict() - # function_sum = df.groupby('function')['sum'].sum().to_dict() function_sum = df[df['function'] != ""].groupby('function')['sum'].sum().to_dict() - - min_value = min(min(taxa_sum.values()), min(function_sum.values())) - max_value = max(max(taxa_sum.values()), max(function_sum.values())) + + sum_dict = {**taxa_sum, **function_sum} + min_value = min(sum_dict.values()) + max_value = max(sum_dict.values()) def normalize(value): if max_value == min_value: @@ -232,7 +231,7 @@ def plot_tflink_network( """ # preprocess focus_list - if focus_list is not None and focus_list: + if focus_list: new_list = [] for i in focus_list: if i in self.tfa.taxa_df.index.tolist(): @@ -322,12 +321,12 @@ def plot_tflink_network( def plot_co_expression_network(self, df_type:str= 'taxa', corr_method:str = 'pearson', - corr_threshold:float=0.5, sample_list:list = None, - width:int = 12, height:int = 8, focus_list:list = [], plot_list_only:bool = False, + corr_threshold:float=0.5, sample_list:list[str]|None = None, + width:int = 12, height:int = 8, focus_list:list[str] = [], plot_list_only:bool = False, ): from matplotlib import colormaps #check sample_list length - if len(sample_list) < 2: + if sample_list and len(sample_list) < 2: raise ValueError(f"sample_list should have at least 2 samples, but got {len(sample_list)}") df_dict = {'taxa': self.tfa.taxa_df, diff --git a/metax/taxafunc_ploter/sankey_plot.py b/metax/taxafunc_ploter/sankey_plot.py index 4a9355e..96143bb 100644 --- a/metax/taxafunc_ploter/sankey_plot.py +++ b/metax/taxafunc_ploter/sankey_plot.py @@ -20,6 +20,46 @@ def __init__(self, taxa_func_analyzer, theme='white'): self.font_size = 12 self.show_legend = True self.theme = theme + + def convert_df_by_group_for_sankey(self,df, sub_meta, plot_mean) -> dict: + sample_list = df.columns.tolist() + + if plot_mean or sub_meta != 'None': + if plot_mean and sub_meta == 'None': # if sub_meta is not None, plot_mean is False + df = self.tfa.BasicStats.get_stats_mean_df_by_group(df) + elif sub_meta != 'None': + df, _ = self.tfa.BasicStats.get_combined_sub_meta_df(df=df, sub_meta=sub_meta, plot_mean=plot_mean) + group_dict = {col: col for col in df.columns} + + else: + # group_dict = group is key, samples in a list is value + group_dict = {} + for sample in sample_list: + group = self.tfa.get_group_of_a_sample(sample, self.tfa.meta_name) + if group not in group_dict: + group_dict[group] = [sample] + else: + group_dict[group].append(sample) + + df_dict = {} + # add all samples to the dict + df['sum'] = df.sum(axis=1) + df_dict['All'] = self.df_to_sankey_df(df, value_col='sum') + # add samples for each group to the dict + for group, samples in group_dict.items(): + df_temp = df.loc[:, samples] + # convert to dataframe if it is a series, when there is only one sample, it will be a series + if isinstance(df_temp, pd.Series): + df_temp = pd.DataFrame(df_temp) + + df_temp['sum'] = df_temp.sum(axis=1) + # remove values that are 0 + df_temp = df_temp[df_temp['sum'] != 0] + df_temp = self.df_to_sankey_df(df_temp, value_col='sum') + df_dict[group] = df_temp + + return df_dict + def convert_logfc_df_for_sankey(self, df, pvalue: float = 0.05,p_type ='padj', log2fc_min: float = 1,log2fc_max:float = 10) -> dict: @@ -78,6 +118,9 @@ def convert_logfc_df_for_sankey(self, df, pvalue: float = 0.05,p_type ='padj', df_t['value'] = abs(df_t['value']) df_out_dict[key] = [df_t, len(df_t)] # df_out_dict[key] = df_t + # remove normal if other not all empty, + if len(df_out_dict) > 1: + df_out_dict.pop('normal', None) return df_out_dict def df_to_sankey_df(self, df, value_col='value'): @@ -166,7 +209,7 @@ def __plot_sankey(self,link_nodes_dict, width, height, title, subtitle=''): links = value[1] num = value[2] pic.add( - f'{key} (Total items: {num})', + f'{key} ({num})', nodes=nodes, links=links, node_align='left', @@ -179,7 +222,9 @@ def __plot_sankey(self,link_nodes_dict, width, height, title, subtitle=''): pic.set_global_opts( - legend_opts=opts.LegendOpts(selected_mode='single', is_show=self.show_legend), + legend_opts=opts.LegendOpts(selected_mode='single', is_show=self.show_legend, + type_="scroll",page_icon_size=8, + ), toolbox_opts=opts.ToolboxOpts( is_show=True, orient="vertical", @@ -228,19 +273,18 @@ def plot_fc_sankey(self, fc_df, width=12, height=8, pvalue=0.05, p_type='padj', link_nodes_dict[key] = [nodes, links, value[1]] pic = self.__plot_sankey(link_nodes_dict, width=width, height=height, title=title) return pic - - - def plot_intensity_sankey(self, df,width=12, height=8, title='Sankey Plot', subtitle='', font_size=12, show_legend=True): + + def plot_intensity_sankey(self,df, width=12, height=8, title="Sankey Plot", subtitle="", + font_size=12, show_legend=True, sub_meta='None', plot_mean=False): df = df.copy() - df['sum'] = df.sum(axis=1) self.font_size = font_size self.show_legend=show_legend - df_sankey = self.df_to_sankey_df(df, value_col='sum') - nodes, links = self.create_nodes_links(df_sankey) - # only state the number of last nodes - link_nodes_dict = {'Intensity Sum': [nodes, links, len(df.index)]} - - pic = self.__plot_sankey(link_nodes_dict, width=width, height=height, title=title, subtitle= subtitle) - return pic - \ No newline at end of file + df_sankey = self.convert_df_by_group_for_sankey(df, sub_meta, plot_mean) + link_nodes_dict = {} + for key, value in df_sankey.items(): + print(f'Creating nodes and links for {key}...') + nodes, links = self.create_nodes_links(value) + link_nodes_dict[key] = [nodes, links, len(value.index)] + pic = self.__plot_sankey(link_nodes_dict, width=width, height=height, title=title, subtitle=subtitle) + return pic \ No newline at end of file diff --git a/metax/utils/version.py b/metax/utils/version.py index f709e86..ba761bc 100644 --- a/metax/utils/version.py +++ b/metax/utils/version.py @@ -1,2 +1,2 @@ -__version__ = '1.108.7' +__version__ = '1.109.2' API_version = '2' \ No newline at end of file