Use as.factor(scan) for box plots

This commit is contained in:
2024-09-01 15:12:56 -04:00
parent 73a890cd36
commit a4de405b75

View File

@@ -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",