From 9986d138b374745738c007da544d6e0960761238 Mon Sep 17 00:00:00 2001 From: Bryan Roessler Date: Tue, 10 Sep 2024 14:01:29 -0400 Subject: [PATCH] Add rank plot annotations --- .../apps/r/calculate_interaction_zscores.R | 22 ++++++++++++++----- 1 file changed, 17 insertions(+), 5 deletions(-) diff --git a/qhtcp-workflow/apps/r/calculate_interaction_zscores.R b/qhtcp-workflow/apps/r/calculate_interaction_zscores.R index d3a8f17d..7504e227 100644 --- a/qhtcp-workflow/apps/r/calculate_interaction_zscores.R +++ b/qhtcp-workflow/apps/r/calculate_interaction_zscores.R @@ -180,7 +180,6 @@ calculate_summary_stats <- function(df, variables, group_vars = c("conc_num", "c return(list(summary_stats = summary_stats, df_with_stats = df_with_stats)) } - calculate_interaction_scores <- function(df, max_conc, variables, group_vars = c("OrfRep", "Gene", "num")) { # Calculate total concentration variables @@ -515,11 +514,11 @@ generate_interaction_plot_configs <- function(df, variables) { return(plot_configs) } -generate_rank_plot_configs <- function(df, rank_var, zscore_var, label_prefix) { +generate_rank_plot_config <- function(df, rank_var, zscore_var, label_prefix) { configs <- list() for (sd_band in c(1, 2, 3)) { - # Annotated version + # Annotated version (with text) configs[[length(configs) + 1]] <- list( df = df, x_var = rank_var, @@ -537,20 +536,33 @@ generate_rank_plot_configs <- function(df, rank_var, zscore_var, label_prefix) { ) ) - # Non-annotated version + # Non-annotated version (_notext) configs[[length(configs) + 1]] <- list( df = df, x_var = rank_var, y_var = zscore_var, plot_type = "rank", title = paste("Average Z score vs. Rank for", label_prefix, "above", sd_band, "SD"), - sd_band = sd_band + sd_band = sd_band, + enhancer_label = NULL, # Remove annotations for _notext + suppressor_label = NULL # Remove annotations for _notext ) } return(configs) } +# Generate all rank plot configurations for L and K (annotated and _notext) +rank_plot_config <- c( + create_rank_plot_config(zscores_interactions_adjusted, "L_Rank", "Avg_Zscore_L", "L"), + create_rank_plot_config(zscores_interactions_adjusted, "K_Rank", "Avg_Zscore_K", "K") +) + +# Generate and save rank plots +generate_and_save_plots(output_dir = out_dir, file_name = "RankPlots", + plot_configs = rank_plot_config, grid_layout = list(ncol = 3, nrow = 2)) + + generate_correlation_plot_configs <- function(df, lm_list, lm_summaries) { lapply(seq_along(lm_list), function(i) { r_squared <- round(lm_summaries[[i]]$r.squared, 3)