From d8c66a6f9afe4f29bc68cb4fb5e305dc90641cac Mon Sep 17 00:00:00 2001 From: Bryan Roessler Date: Thu, 12 Sep 2024 22:41:51 -0400 Subject: [PATCH] Avoid rounding NAs in annotation labels --- .../apps/r/calculate_interaction_zscores.R | 20 ++++++++++++++++--- 1 file changed, 17 insertions(+), 3 deletions(-) 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)