From 071410262a2196de49b1463698d05bb5320ec973 Mon Sep 17 00:00:00 2001 From: tonywu1999 Date: Fri, 24 Apr 2026 16:26:53 -0400 Subject: [PATCH 1/4] trying out plotly for groupcomparisonplotsPTM --- R/module-statmodel-server.R | 2 +- R/statmodel-server-visualization.R | 6 ++++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/R/module-statmodel-server.R b/R/module-statmodel-server.R index 5409a28..4064a86 100644 --- a/R/module-statmodel-server.R +++ b/R/module-statmodel-server.R @@ -448,7 +448,7 @@ statmodelServer = function(id, parent_session, loadpage_input, qc_input, ns = session$ns if (loadpage_input()$BIO == "PTM") { - output_plot = renderPlot({ + output_plot = renderPlotly({ create_group_comparison_plot( input, loadpage_input(), data_comparison() ) diff --git a/R/statmodel-server-visualization.R b/R/statmodel-server-visualization.R index 4d4a017..6adfa7d 100644 --- a/R/statmodel-server-visualization.R +++ b/R/statmodel-server-visualization.R @@ -83,7 +83,7 @@ create_group_comparison_plot = function(input, loadpage_input, data_comparison) stop('** Cannot generate multiple plots in a screen. Please refine selection or save to a pdf. **') } if (loadpage_input$BIO == "PTM") { - plot_result = groupComparisonPlotsPTM( + result = groupComparisonPlotsPTM( data_comparison, input[[NAMESPACE_STATMODEL$visualization_plot_type]], sig = input[[NAMESPACE_STATMODEL$visualization_volcano_significance_cutoff]], @@ -91,8 +91,10 @@ create_group_comparison_plot = function(input, loadpage_input, data_comparison) logBase.pvalue = as.integer(input[[NAMESPACE_STATMODEL$visualization_logp_base]]), ProteinName = TRUE, which.Comparison = input[[NAMESPACE_STATMODEL$visualization_which_comparison]], - address = FALSE + address = FALSE, + isPlotly = TRUE ) + plot_result = if (length(result) >= 3) result[[3]] else result[[1]] } else if (loadpage_input$DDA_DIA == "TMT") { plot_result = groupComparisonPlots( data = data_comparison$ComparisonResult, From 4915cac7240ac0f5822c0d50add991a66a2f294b Mon Sep 17 00:00:00 2001 From: tonywu1999 Date: Fri, 24 Apr 2026 16:43:47 -0400 Subject: [PATCH 2/4] extra fix for plotting purposes --- R/statmodel-server-visualization.R | 1 + 1 file changed, 1 insertion(+) diff --git a/R/statmodel-server-visualization.R b/R/statmodel-server-visualization.R index 6adfa7d..b058f8d 100644 --- a/R/statmodel-server-visualization.R +++ b/R/statmodel-server-visualization.R @@ -133,6 +133,7 @@ create_group_comparison_plot = function(input, loadpage_input, data_comparison) }, error = function(e) { remove_modal_spinner() showNotification(conditionMessage(e), type = "error", duration = 8) + NULL }) } #' Get filename for plot download based on plot type From 658686b1df53deecad21cf0633587178f5f7a7f3 Mon Sep 17 00:00:00 2001 From: tonywu1999 Date: Fri, 24 Apr 2026 16:48:19 -0400 Subject: [PATCH 3/4] simplify code --- R/module-statmodel-server.R | 9 +-------- 1 file changed, 1 insertion(+), 8 deletions(-) diff --git a/R/module-statmodel-server.R b/R/module-statmodel-server.R index 4064a86..5b06cee 100644 --- a/R/module-statmodel-server.R +++ b/R/module-statmodel-server.R @@ -447,14 +447,7 @@ statmodelServer = function(id, parent_session, loadpage_input, qc_input, req(input[[NAMESPACE_STATMODEL$visualization_view_results]]) ns = session$ns - if (loadpage_input()$BIO == "PTM") { - output_plot = renderPlotly({ - create_group_comparison_plot( - input, loadpage_input(), data_comparison() - ) - }) - - } else if (input[[NAMESPACE_STATMODEL$visualization_plot_type]] == + if (input[[NAMESPACE_STATMODEL$visualization_plot_type]] == CONSTANTS_STATMODEL$plot_type_response_curve) { if (app_template() == TEMPLATES$protein_turnover) { req(turnover_ratios()) From fb057370d1f2ea8d16a73160f9805308eefc2233 Mon Sep 17 00:00:00 2001 From: tonywu1999 Date: Fri, 24 Apr 2026 17:05:57 -0400 Subject: [PATCH 4/4] add comment --- R/statmodel-server-visualization.R | 3 +++ 1 file changed, 3 insertions(+) diff --git a/R/statmodel-server-visualization.R b/R/statmodel-server-visualization.R index b058f8d..618efb3 100644 --- a/R/statmodel-server-visualization.R +++ b/R/statmodel-server-visualization.R @@ -94,6 +94,9 @@ create_group_comparison_plot = function(input, loadpage_input, data_comparison) address = FALSE, isPlotly = TRUE ) + # groupComparisonPlotsPTM returns `result` as a list where element 3 is + # the adjusted-peptide plot and element 1 is the unadjusted fallback; + # prefer the adjusted plot (result[[3]]) when available. plot_result = if (length(result) >= 3) result[[3]] else result[[1]] } else if (loadpage_input$DDA_DIA == "TMT") { plot_result = groupComparisonPlots(