From 9c4d573b92a48398c6daac6a42be3f76ada4658a Mon Sep 17 00:00:00 2001 From: Luis Herfurth Date: Fri, 10 Apr 2026 17:25:41 +0200 Subject: [PATCH 1/6] Fixed spelling + added PCA + added Lipid Pathways --- .gitignore | 3 + R/MetAlyzer_dataset.R | 2 +- R/MetAlyzer_fpaths.R | 2 +- inst/extdata/Pathway_new.xlsx | Bin 0 -> 43605 bytes inst/extdata/~$Pathway_new.xlsx | Bin 0 -> 165 bytes inst/shinyapp/app.R | 111 ++++++++++++++++++++++++++++++++ 6 files changed, 116 insertions(+), 2 deletions(-) create mode 100644 inst/extdata/Pathway_new.xlsx create mode 100644 inst/extdata/~$Pathway_new.xlsx diff --git a/.gitignore b/.gitignore index a527a76..b9dbcaa 100755 --- a/.gitignore +++ b/.gitignore @@ -9,3 +9,6 @@ *_cache docs environment.yml +Pathway_info/ +.github +tests/ \ No newline at end of file diff --git a/R/MetAlyzer_dataset.R b/R/MetAlyzer_dataset.R index 9d2fb53..08947a3 100644 --- a/R/MetAlyzer_dataset.R +++ b/R/MetAlyzer_dataset.R @@ -223,7 +223,7 @@ get_data_range <- function(full_sheet) { dim(full_sheet) )[, 2] - rows_data <- which(full_sheet[, col_sample_type] == "Sample") # rows + rows_data <- which(grepl("^\\s*Sample\\s*$", full_sheet[, col_sample_type], ignore.case = TRUE)) # rows names(rows_data) <- NULL cols_data <- (col_class + 1):ncol(full_sheet) # columns diff --git a/R/MetAlyzer_fpaths.R b/R/MetAlyzer_fpaths.R index f3c706c..2028155 100644 --- a/R/MetAlyzer_fpaths.R +++ b/R/MetAlyzer_fpaths.R @@ -89,5 +89,5 @@ polarity <- function() { #' @examples #' fpath <- MetAlyzer::pathway() pathway <- function() { - system.file("extdata", "Pathway_120325.xlsx", package = "MetAlyzer") + system.file("extdata", "Pathway_new.xlsx", package = "MetAlyzer") } diff --git a/inst/extdata/Pathway_new.xlsx b/inst/extdata/Pathway_new.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..26afd739919a9c4525715260da5495ec56399153 GIT binary patch literal 43605 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 BGTZ% + shinycssloaders::withSpinner(color="#56070C"), + fluidRow(style="display:flex; justify-content:right; margin-top:1rem;", + column(width = 2, + selectInput("formatPCA", label = NULL, + choices = c("html", "png", "pdf", "svg"), + selected = "html")), + column(width = 2, downloadButton("downloadPCA", + "Download"))) ) ) ) @@ -1524,6 +1547,77 @@ server <- function(input, output, session) { plotly::ggplotly(g) }) + # === PCA === + # Update color by choices for PCA + output$updateColorByPCA <- renderUI({ + req(smpChoicePack()$smpChoiceList) + metaCols <- names(smpChoicePack()$smpChoiceList) + div( + style = "display: flex; align-items: center;", + tags$label("Color by:", style = "margin-right: 10px; margin-bottom: 15px;"), + selectInput('colorByPCA', NULL, choices = c('None', metaCols), selected = 'None', multiple = F) + ) + }) + # Update shape by choices for PCA + output$updateShapeByPCA <- renderUI({ + req(smpChoicePack()$smpChoiceList) + metaCols <- names(smpChoicePack()$smpChoiceList) + div( + style = "display: flex; align-items: center;", + tags$label("Shape by:", style = "margin-right: 10px; margin-bottom: 15px;"), + selectInput('shapeByPCA', NULL, choices = c('None', metaCols), selected = 'None', multiple = F) + ) + }) + # Create reactive object for PCA plot (for downloading) + reactPCAPlot <- reactiveVal(NULL) + # Show warning when both PC axes are the same + output$pcaDuplicateWarning <- renderUI({ + req(input$pcxPCA, input$pcyPCA) + if (as.integer(input$pcxPCA) == as.integer(input$pcyPCA)) { + tags$p(style = "color: red; font-weight: bold; margin-top: 0.5rem;", + "Please select two different principal components.") + } + }) + # Render PCA plot using MetaProViz::viz_pca + output$plotPCA <- plotly::renderPlotly({ + req(reactMetabObj$metabObj) + color_by <- if (!is.null(input$colorByPCA) && input$colorByPCA != 'None') input$colorByPCA else NULL + shape_by <- if (!is.null(input$shapeByPCA) && input$shapeByPCA != 'None') input$shapeByPCA else NULL + pcx_val <- if (!is.null(input$pcxPCA) && input$pcxPCA >= 1) as.integer(input$pcxPCA) else 1L + pcy_val <- if (!is.null(input$pcyPCA) && input$pcyPCA >= 1) as.integer(input$pcyPCA) else 2L + + # Prevent rendering when both axes use the same PC + validate(need(pcx_val != pcy_val, "")) + + metadata_info_vec <- c() + if (!is.null(color_by)) metadata_info_vec <- c(metadata_info_vec, color = color_by) + if (!is.null(shape_by)) metadata_info_vec <- c(metadata_info_vec, shape = shape_by) + if (length(metadata_info_vec) == 0) metadata_info_vec <- NULL + # viz_pca's process_se() converts colData to data.frame (spaces → dots); match that here + if (!is.null(metadata_info_vec)) { + metadata_info_vec <- gsub(' ', '.', metadata_info_vec) + } + + # Remove zero-variance metabolites (all-NA rows become constant after MetaProViz's + # internal NA→0 imputation and would cause prcomp to fail with scale.=TRUE) + se_pca <- reactMetabObj$metabObj + conc_mat <- SummarizedExperiment::assay(se_pca, 'conc_values') + row_vars <- apply(conc_mat, 1, function(x) var(x, na.rm = TRUE)) + se_pca <- se_pca[!is.na(row_vars) & row_vars > 0, ] + + result <- MetaProViz::viz_pca( + data = se_pca, + metadata_info = metadata_info_vec, + save_plot = NULL, + print_plot = FALSE, + pcx = pcx_val, + pcy = pcy_val + ) + pca_plot <- result$Plot[["Plot"]] + reactPCAPlot(pca_plot) + plotly::ggplotly(pca_plot) + }) + # Export abundance matrix output$downloadRawAbunExport <- downloadHandler( filename = paste("abundance_matrix_", format(Sys.Date(), "%Y-%m-%d"), ".csv", sep = ""), @@ -1777,6 +1871,23 @@ server <- function(input, output, session) { } ) + # PCA plot + output$downloadPCA <- downloadHandler( + filename = function() { + paste0("pca_plot_", Sys.Date(), '.', input$formatPCA) + }, + content = function(file) { + req(reactPCAPlot()) + if (input$formatPCA == "html") { + final_plot <- plotly::ggplotly(reactPCAPlot()) + htmlwidgets::saveWidget(final_plot, file, selfcontained = TRUE) + } else { + ggsave(filename = file, plot = reactPCAPlot(), device = input$formatPCA, + dpi = 400, units = "cm", width = 29.7, height = 21.0) + } + } + ) + # Download log2(FC) visuals # Vulcano plot output$downloadVulcanoPlot <- downloadHandler( From 385ff2a6c51237af929010490cbaa5b153d98f46 Mon Sep 17 00:00:00 2001 From: Luis Herfurth Date: Fri, 10 Apr 2026 17:29:37 +0200 Subject: [PATCH 2/6] Fixed overflow from metadate --- inst/shinyapp/app.R | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/inst/shinyapp/app.R b/inst/shinyapp/app.R index f873efb..98148d9 100644 --- a/inst/shinyapp/app.R +++ b/inst/shinyapp/app.R @@ -1468,7 +1468,7 @@ server <- function(input, output, session) { req(reactOriSmpMetadatTbl()) DT::datatable(reactOriSmpMetadatTbl(), rownames = F, filter = list(position = 'top', clear = T, plain = F), selection = list(mode = 'single', target = 'row'), style = 'bootstrap', - options = list(pageLength = 5)) + options = list(pageLength = 5, scrollX = TRUE)) # Reactive # req(datOverviewPack()$smpMetadatTbl) From 567b5b22869e40f63a4dbfcbc788e41daeba9a49 Mon Sep 17 00:00:00 2001 From: Luis Herfurth Date: Fri, 10 Apr 2026 17:37:15 +0200 Subject: [PATCH 3/6] fixed styling of PCA --- inst/shinyapp/app.R | 39 +++++++++++++++++---------------------- 1 file changed, 17 insertions(+), 22 deletions(-) diff --git a/inst/shinyapp/app.R b/inst/shinyapp/app.R index 98148d9..d04de90 100644 --- a/inst/shinyapp/app.R +++ b/inst/shinyapp/app.R @@ -209,14 +209,14 @@ ui <- fluidPage( ), shinyBS::bsCollapsePanel('PCA', style = 'primary', fluidRow( - column(width = 4, uiOutput('updateColorByPCA')), - column(width = 4, uiOutput('updateShapeByPCA')), + style = 'display:flex; align-items: center;', column(width = 2, numericInput('pcxPCA', 'PC (x-axis)', value = 1, min = 1, max = 10, step = 1)), column(width = 2, numericInput('pcyPCA', 'PC (y-axis)', - value = 2, min = 1, max = 10, step = 1)) + value = 2, min = 1, max = 10, step = 1)), + column(width = 4, offset = 4, uiOutput('updateColorByPCA')) ), uiOutput('pcaDuplicateWarning'), plotly::plotlyOutput('plotPCA') %>% @@ -1558,16 +1558,6 @@ server <- function(input, output, session) { selectInput('colorByPCA', NULL, choices = c('None', metaCols), selected = 'None', multiple = F) ) }) - # Update shape by choices for PCA - output$updateShapeByPCA <- renderUI({ - req(smpChoicePack()$smpChoiceList) - metaCols <- names(smpChoicePack()$smpChoiceList) - div( - style = "display: flex; align-items: center;", - tags$label("Shape by:", style = "margin-right: 10px; margin-bottom: 15px;"), - selectInput('shapeByPCA', NULL, choices = c('None', metaCols), selected = 'None', multiple = F) - ) - }) # Create reactive object for PCA plot (for downloading) reactPCAPlot <- reactiveVal(NULL) # Show warning when both PC axes are the same @@ -1582,20 +1572,16 @@ server <- function(input, output, session) { output$plotPCA <- plotly::renderPlotly({ req(reactMetabObj$metabObj) color_by <- if (!is.null(input$colorByPCA) && input$colorByPCA != 'None') input$colorByPCA else NULL - shape_by <- if (!is.null(input$shapeByPCA) && input$shapeByPCA != 'None') input$shapeByPCA else NULL pcx_val <- if (!is.null(input$pcxPCA) && input$pcxPCA >= 1) as.integer(input$pcxPCA) else 1L pcy_val <- if (!is.null(input$pcyPCA) && input$pcyPCA >= 1) as.integer(input$pcyPCA) else 2L # Prevent rendering when both axes use the same PC validate(need(pcx_val != pcy_val, "")) - metadata_info_vec <- c() - if (!is.null(color_by)) metadata_info_vec <- c(metadata_info_vec, color = color_by) - if (!is.null(shape_by)) metadata_info_vec <- c(metadata_info_vec, shape = shape_by) - if (length(metadata_info_vec) == 0) metadata_info_vec <- NULL - # viz_pca's process_se() converts colData to data.frame (spaces → dots); match that here - if (!is.null(metadata_info_vec)) { - metadata_info_vec <- gsub(' ', '.', metadata_info_vec) + metadata_info_vec <- NULL + if (!is.null(color_by)) { + # viz_pca's process_se() converts colData to data.frame (spaces → dots); match that here + metadata_info_vec <- c(color = gsub(' ', '.', color_by)) } # Remove zero-variance metabolites (all-NA rows become constant after MetaProViz's @@ -1615,7 +1601,16 @@ server <- function(input, output, session) { ) pca_plot <- result$Plot[["Plot"]] reactPCAPlot(pca_plot) - plotly::ggplotly(pca_plot) + p <- plotly::ggplotly(pca_plot) + # Clean legend: remove parenthesised trace names like "(Group, 1)" → "Group" + for (i in seq_along(p$x$data)) { + nm <- p$x$data[[i]]$name + if (!is.null(nm)) { + p$x$data[[i]]$name <- gsub("^\\((.+),\\d+\\)$", "\\1", nm) + p$x$data[[i]]$legendgroup <- p$x$data[[i]]$name + } + } + p }) # Export abundance matrix From aa9be1dece72cdfb3e9726ff46da535b1669eb94 Mon Sep 17 00:00:00 2001 From: Luis Herfurth Date: Fri, 10 Apr 2026 17:44:16 +0200 Subject: [PATCH 4/6] Fixed "old plots on new data upload" issue --- inst/shinyapp/app.R | 15 +-------------- 1 file changed, 1 insertion(+), 14 deletions(-) diff --git a/inst/shinyapp/app.R b/inst/shinyapp/app.R index d04de90..5a48bab 100644 --- a/inst/shinyapp/app.R +++ b/inst/shinyapp/app.R @@ -142,9 +142,6 @@ ui <- fluidPage( multiple = T, shinyBS::bsCollapsePanel('Sample metadata (All)', style = 'primary', DT::dataTableOutput('tblSmpMetadat') %>% - #### Collapsed panel: Workaround (SHOULD WORK BUT NOT WORK) - # Render table outside collapsed panel and display it - # uiOutput('uiTblSmpMetadat') %>% shinycssloaders::withSpinner(color="#56070C")), shinyBS::bsCollapsePanel('Data distribution', style = 'primary', fluidRow( @@ -694,11 +691,6 @@ server <- function(input, output, session) { reactMetabObj$metabObj <- NULL } }) - #### Collapsed panel: Workaround - # Close expanded panels (due to rendering) right after output is rendered - observeEvent(reactOriSmpMetadatTbl(), { - shinyBS::updateCollapse(session, 'panelDatOverviewViz', close = 'Sample metadata (All)') - }) # Retrieve abundance data and sample metadata and compute feature completeness # level and quantification status validity level for showing data overviews @@ -1477,12 +1469,7 @@ server <- function(input, output, session) { # selection = list(mode = 'single', target = 'row'), style = 'bootstrap', # options = list(pageLength = 5)) }) - outputOptions(output, 'tblSmpMetadat', suspendWhenHidden = F) - #### Collapsed panel: Workaround (SHOULD WORK BUT NOT WORK) - # Render table outside collapsed panel and display it - # output$uiTblSmpMetadat <- renderUI({ - # DT::dataTableOutput('tblSmpMetadat') - # }) + # Data completeness output$summDatComplete <- renderText({ From e7dbbef405acf8382e9ef38b35a2bc539cc4214b Mon Sep 17 00:00:00 2001 From: Luis Herfurth Date: Mon, 13 Apr 2026 09:22:56 +0200 Subject: [PATCH 5/6] Changed to no Lipids - save for later update --- R/MetAlyzer_fpaths.R | 2 +- inst/extdata/Pathway_100426.xlsx | Bin 0 -> 37001 bytes inst/extdata/Pathway_100426_lipids.xlsx | Bin 0 -> 45725 bytes inst/extdata/Pathway_120325.xlsx | Bin 44255 -> 0 bytes inst/extdata/Pathway_new.xlsx | Bin 43605 -> 0 bytes 5 files changed, 1 insertion(+), 1 deletion(-) create mode 100644 inst/extdata/Pathway_100426.xlsx create mode 100644 inst/extdata/Pathway_100426_lipids.xlsx delete mode 100644 inst/extdata/Pathway_120325.xlsx delete mode 100644 inst/extdata/Pathway_new.xlsx diff --git a/R/MetAlyzer_fpaths.R b/R/MetAlyzer_fpaths.R index 2028155..1187563 100644 --- a/R/MetAlyzer_fpaths.R +++ b/R/MetAlyzer_fpaths.R @@ -89,5 +89,5 @@ polarity <- function() { #' @examples #' fpath <- MetAlyzer::pathway() pathway <- function() { - system.file("extdata", "Pathway_new.xlsx", package = "MetAlyzer") + system.file("extdata", "Pathway_100426.xlsx", package = "MetAlyzer") } diff --git a/inst/extdata/Pathway_100426.xlsx b/inst/extdata/Pathway_100426.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..97835ab4f597cb794b772362856fef02e14404ff GIT binary patch literal 37001 zcmZ6yV{~TC^935)PA0bPiEZ09Cbn(c&cwEzJh43!+xE@8zYq8R?}w+)T4&YjQ+rp{ zetLCRD@cQap#cE_K>?*o#OQ=#{CX_{1_Dxm0s=z)eyc5PZ|7`k=d7>d@ypanm)_mh zW;nH9Zjcc!^h%;jIE6;5F(4R8Yt*n0Io={Bd;5Jdv~lEQvHPVD)Wd?{6p>pMPq8^hk8|Tw~|>%i6Q8?HmPK zwa-W-(mCCc9-2mge2l0pNxK6&n5Q#~o#3Ql=({6l*WtjiKR29EbwBx@*Q8;A&~07e ziYz%oiurhxLzN~rsI@8;;Vh@V)k_fbDw0xUG+z&8buS_0$P>zG!XMzQHgoD28ZvT* zzXPZ$`@`yyemERojAps`7;8x-<9AB=tVW885~tO|@jU`?DN;qUG?WjbKl!=6@Tba; zL|k9#Jityl*jE;m!2$o@d{+PxU+U|qkPOSX3Ful+1bGu08DGr)hxAk)J+~N?j ztqw(`Rx*D5+$=mseh2s+>VJUh&vFO>cr&*><<2QrWAIiaF-l)eCU|Y| zzaYu=75-05n^hS}&c0(Q0|EpD`~B2+G_`SJp#L{kCr(*?$I|~Qs5@w`TXDS~t4NN) zcyx>;$El`Zl30c1C3hp4oBz7 z4B8x>)zCG1odvuU`1?^!cy;5a!o&C-n~i1W_H|PF;1GR|WdIL_YwE>Bm=1wbUYR0W zNNN%U%^_JBN#c{J7-%lXx{m$*Qxm5Hv2?_ siPK6YC0@>hGI=}6oZ&u&=oj;_hG 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�!0mb)?S~h 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

gP$#-2W^?J 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

KAwnrzHN&+1j^odrmA@O6wDgv`{#G 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 BGTZ Date: Wed, 15 Apr 2026 09:35:04 +0200 Subject: [PATCH 6/6] implemented comments --- inst/shinyapp/app.R | 56 +++++++++++++++++++++++++++++++++------------ 1 file changed, 41 insertions(+), 15 deletions(-) diff --git a/inst/shinyapp/app.R b/inst/shinyapp/app.R index 5a48bab..7f87351 100644 --- a/inst/shinyapp/app.R +++ b/inst/shinyapp/app.R @@ -138,10 +138,13 @@ ui <- fluidPage( shinyBS::bsCollapse( id = 'panelDatOverviewViz', # Note that collapsed panel does not render output until it is expanded - open = c('Data distribution', 'Data completeness', 'Quantification status', 'Sample metadata (All)'), + open = c('Data distribution', 'Data completeness', 'Quantification status', 'Sample metadata (All)', 'PCA'), multiple = T, shinyBS::bsCollapsePanel('Sample metadata (All)', style = 'primary', DT::dataTableOutput('tblSmpMetadat') %>% + #### Collapsed panel: Workaround (SHOULD WORK BUT NOT WORK) + # Render table outside collapsed panel and display it + # uiOutput('uiTblSmpMetadat') %>% shinycssloaders::withSpinner(color="#56070C")), shinyBS::bsCollapsePanel('Data distribution', style = 'primary', fluidRow( @@ -208,11 +211,13 @@ ui <- fluidPage( fluidRow( style = 'display:flex; align-items: center;', column(width = 2, - numericInput('pcxPCA', 'PC (x-axis)', - value = 1, min = 1, max = 10, step = 1)), + selectInput('pcxPCA', 'PC (x-axis)', + choices = paste0('PC', 1:10), + selected = 'PC1')), column(width = 2, - numericInput('pcyPCA', 'PC (y-axis)', - value = 2, min = 1, max = 10, step = 1)), + selectInput('pcyPCA', 'PC (y-axis)', + choices = paste0('PC', 1:10), + selected = 'PC2')), column(width = 4, offset = 4, uiOutput('updateColorByPCA')) ), uiOutput('pcaDuplicateWarning'), @@ -691,6 +696,11 @@ server <- function(input, output, session) { reactMetabObj$metabObj <- NULL } }) + #### Collapsed panel: Workaround + # Close expanded panels (due to rendering) right after output is rendered + observeEvent(reactOriSmpMetadatTbl(), { + shinyBS::updateCollapse(session, 'panelDatOverviewViz', close = 'Sample metadata (All)') + }) # Retrieve abundance data and sample metadata and compute feature completeness # level and quantification status validity level for showing data overviews @@ -1469,6 +1479,12 @@ server <- function(input, output, session) { # selection = list(mode = 'single', target = 'row'), style = 'bootstrap', # options = list(pageLength = 5)) }) + outputOptions(output, 'tblSmpMetadat', suspendWhenHidden = F) + #### Collapsed panel: Workaround (SHOULD WORK BUT NOT WORK) + # Render table outside collapsed panel and display it + # output$uiTblSmpMetadat <- renderUI({ + # DT::dataTableOutput('tblSmpMetadat') + # }) # Data completeness @@ -1550,20 +1566,18 @@ server <- function(input, output, session) { # Show warning when both PC axes are the same output$pcaDuplicateWarning <- renderUI({ req(input$pcxPCA, input$pcyPCA) - if (as.integer(input$pcxPCA) == as.integer(input$pcyPCA)) { + pcx_val <- as.integer(gsub('PC', '', input$pcxPCA)) + pcy_val <- as.integer(gsub('PC', '', input$pcyPCA)) + if (pcx_val == pcy_val) { tags$p(style = "color: red; font-weight: bold; margin-top: 0.5rem;", "Please select two different principal components.") } }) - # Render PCA plot using MetaProViz::viz_pca - output$plotPCA <- plotly::renderPlotly({ + + # Separate PCA computation from visualization to avoid rerunning prcomp on PC change + reactPCAResult <- reactive({ req(reactMetabObj$metabObj) color_by <- if (!is.null(input$colorByPCA) && input$colorByPCA != 'None') input$colorByPCA else NULL - pcx_val <- if (!is.null(input$pcxPCA) && input$pcxPCA >= 1) as.integer(input$pcxPCA) else 1L - pcy_val <- if (!is.null(input$pcyPCA) && input$pcyPCA >= 1) as.integer(input$pcyPCA) else 2L - - # Prevent rendering when both axes use the same PC - validate(need(pcx_val != pcy_val, "")) metadata_info_vec <- NULL if (!is.null(color_by)) { @@ -1578,9 +1592,21 @@ server <- function(input, output, session) { row_vars <- apply(conc_mat, 1, function(x) var(x, na.rm = TRUE)) se_pca <- se_pca[!is.na(row_vars) & row_vars > 0, ] + list(se_pca = se_pca, metadata_info_vec = metadata_info_vec) + }) + + # Render PCA plot – only reruns viz_pca when PC selection changes + output$plotPCA <- plotly::renderPlotly({ + pca_data <- reactPCAResult() + pcx_val <- as.integer(gsub('PC', '', input$pcxPCA)) + pcy_val <- as.integer(gsub('PC', '', input$pcyPCA)) + + # Prevent rendering when both axes use the same PC + validate(need(pcx_val != pcy_val, "")) + result <- MetaProViz::viz_pca( - data = se_pca, - metadata_info = metadata_info_vec, + data = pca_data$se_pca, + metadata_info = pca_data$metadata_info_vec, save_plot = NULL, print_plot = FALSE, pcx = pcx_val,