diff --git a/qhtcp-workflow/apps/r/calculate_interaction_zscores.R b/qhtcp-workflow/apps/r/calculate_interaction_zscores.R index a5a783b6..fbdf3f8b 100644 --- a/qhtcp-workflow/apps/r/calculate_interaction_zscores.R +++ b/qhtcp-workflow/apps/r/calculate_interaction_zscores.R @@ -382,7 +382,7 @@ calculate_interaction_scores <- function(df, max_conc, variables, group_vars = c generate_and_save_plots <- function(output_dir, file_name, plot_configs, grid_layout = NULL) { - message("Generating html and pdf plots for: ", file_name, ".pdf|html") + message("Generating html and pdf plots for: ", file_name) plots <- lapply(plot_configs, function(config) { df <- config$df @@ -554,8 +554,22 @@ generate_interaction_plot_configs <- function(df, variables) { # Define which annotations to include for each plot annotation_labels <- list( - ZShift = function(df, var) paste("ZShift =", round(df[[paste0("Z_Shift_", var)]], 2)), - lm_ZScore = function(df, var) paste("lm ZScore =", round(df[[paste0("Z_lm_", var)]], 2)), + ZShift = function(df, var) { + val <- df[[paste0("Z_Shift_", var)]] + if (is.numeric(val)) { + paste("ZShift =", round(val, 2)) + } else { + paste("ZShift =", val) + } + }, + lm_ZScore = function(df, var) { + val <- df[[paste0("Z_lm_", var)]] + if (is.numeric(val)) { + paste("lm ZScore =", round(val, 2)) + } else { + paste("lm ZScore =", val) + } + }, NG = function(df, var) paste("NG =", df$NG), DB = function(df, var) paste("DB =", df$DB), SM = function(df, var) paste("SM =", df$SM)