diff --git a/workflow/apps/r/calculate_interaction_zscores5.R b/workflow/apps/r/calculate_interaction_zscores5.R index ca73f6dc..6c1de05c 100644 --- a/workflow/apps/r/calculate_interaction_zscores5.R +++ b/workflow/apps/r/calculate_interaction_zscores5.R @@ -158,7 +158,10 @@ update_gene_names <- function(df, sgd_gene_list) { generate_plot <- function(df, x_var, y_var = NULL, plot_type, color_var = "conc_num", title, x_label = NULL, y_label = NULL) { # Base ggplot object with conditional y mapping - if (!is.null(y_var)) { + if (plot_type == "box") { + # Ensure x_var is treated as a factor for box plots + plot <- ggplot(df, aes(x = as.factor(!!sym(x_var)), y = !!sym(y_var), color = !!sym(color_var))) + } else if (!is.null(y_var)) { plot <- ggplot(df, aes(x = !!sym(x_var), y = !!sym(y_var), color = !!sym(color_var))) } else { plot <- ggplot(df, aes(x = !!sym(x_var), color = !!sym(color_var))) @@ -166,7 +169,7 @@ generate_plot <- function(df, x_var, y_var = NULL, plot_type, color_var = "conc_ # Handle different plot types if (plot_type == "scatter") { - plot <- plot + + plot <- plot + geom_point(shape = 3, size = 0.2, position = "jitter") + stat_summary(fun.data = mean_sdl, geom = "errorbar") + stat_summary(fun = mean, geom = "point", size = 0.6) @@ -188,17 +191,15 @@ generate_plot <- function(df, x_var, y_var = NULL, plot_type, color_var = "conc_ return(plot) } - - generate_and_save_plots <- function(df, output_dir, prefix, variables, include_qc = FALSE) { plots <- list() for (var in variables) { scatter_plot <- - generate_plot(df, x_var = scan, y_var = !!sym(var), plot_type = "scatter", + generate_plot(df, x_var = "scan", y_var = var, plot_type = "scatter", title = paste(prefix, "Scatter Plot for", var)) boxplot <- - generate_plot(df, x_var = as.factor(scan), y_var = !!sym(var), plot_type = "box", + generate_plot(df, x_var = "scan", y_var = var, plot_type = "box", title = paste(prefix, "Box Plot for", var)) plots[[paste0(var, "_scatter")]] <- scatter_plot @@ -207,13 +208,13 @@ generate_and_save_plots <- function(df, output_dir, prefix, variables, include_q if (include_qc) { plots[["Raw_L_vs_K"]] <- - generate_plot(df, x_var = L, y_var = K, plot_type = "scatter", + generate_plot(df, x_var = "L", y_var = "K", plot_type = "scatter", title = "Raw L vs K before QC") plots[["Delta_bg_Density"]] <- - generate_plot(df, x_var = delta_bg, plot_type = "density", color_var = "conc_num", + generate_plot(df, x_var = "delta_bg", plot_type = "density", color_var = "conc_num", title = "Density plot for Delta Background by Conc All Data") plots[["Delta_bg_Bar"]] <- - generate_plot(df, x_var = delta_bg, plot_type = "bar", + generate_plot(df, x_var = "delta_bg", plot_type = "bar", title = "Bar plot for Delta Background by Conc All Data") } @@ -424,12 +425,13 @@ generate_rf_plots <- function(df_calculations, df_interactions, output_dir, file generate_summary_plots <- function(df, output_dir) { variables <- c("L", "K", "r", "AUC") plot_list <- lapply(variables, function(var) { - generate_plot(df, x_var = conc_num_factor, y_var = !!sym(var), plot_type = "scatter", title = paste("Summary Plot for", var)) + generate_plot(df, x_var = "conc_num_factor", y_var = var, plot_type = "scatter", title = paste("Summary Plot for", var)) }) save_plots("Summary_Plots", plot_list, output_dir) } + generate_cpp_correlation_plots <- function(df_na_rm, lm_list, output_dir) { lm_summaries <- lapply(lm_list, summary) plot_titles <- c("Interaction L vs. Interaction K", "Interaction L vs. Interaction r", "Interaction L vs. Interaction AUC",