LSHTM_analysis/scripts/plotting/plotting_thesis/linage_bp_dist.R

172 lines
7.1 KiB
R

#!/usr/bin/env Rscript
#########################################################
# TASK: Lineage plots [merged_df2]
# Count
# Diversity
# Average stability dist
# Avergae affinity dist: optional
#########################################################
#=======
# output
#=======
# outdir_images = paste0("~/git/Writing/thesis/images/results/"
# , tolower(gene), "/")
# cat("plots will output to:", outdir_images)
#########################################################
#===============
#Quick numbers checks
#===============
nsample_lin = merged_df2[merged_df2$lineage%in%c("L1", "L2", "L3", "L4"),]
if ( all(table(nsample_lin$sensitivity)== table(nsample_lin$mutation_info_labels)) ){
cat("\nTotal no. of samples belonging to L1-l4 for", gene,":", nrow(nsample_lin)
, "\nCounting R and S samples")
if( sum(table(nsample_lin$sensitivity)) == nrow(nsample_lin) ){
cat("\nPASSNumbers cross checked:")
print(table(nsample_lin$sensitivity))
}
}else{
stop("Abort: Numbers mismatch. Please check")
}
########################################################################
###################################################
# Lineage barplots #
###################################################
#===============================
# lineage sample and SNP count
#===============================
lin_countP = lin_count_bp(lf_data = lineage_dfL[['lin_lf']]
, all_lineages = F
, x_categ = "sel_lineages"
, y_count = "p_count"
, use_lineages = c("L1", "L2", "L3", "L4")
, bar_fill_categ = "count_categ"
, display_label_col = "p_count"
, bar_stat_stype = "identity"
, d_lab_size = 8
, d_lab_col = "black"
, my_xats = 25 # x axis text size
, my_yats = 25 # y axis text sized_lab_size
, my_xals = 25 # x axis label size
, my_yals = 25 # y axis label size
, my_lls = 25 # legend label size
, bar_col_labels = c("SNPs", "Total Samples")
, bar_col_values = c("grey50", "gray75")
, bar_leg_name = ""
, leg_location = "top"
, y_log10 = F
, y_scale_percent = FALSE
, y_label = c("Count")
)
#===============================
# lineage SNP diversity count
#===============================
lin_diversityP = lin_count_bp_diversity(lf_data = lineage_dfL[['lin_wf']]
, x_categ = "sel_lineages"
, y_count = "snp_diversity"
#, all_lineages = F
, use_lineages = c("L1", "L2", "L3", "L4")
, display_label_col = "snp_diversity_f"
, bar_stat_stype = "identity"
, x_lab_angle = 90
, d_lab_size =9
, my_xats = 25 # x axis text size
, my_yats = 25 # y axis text size
, my_xals = 25 # x axis label size
, my_yals = 25 # y axis label size
, my_lls = 25 # legend label size
, y_log10 = F
, y_scale_percent = F
, leg_location = "top"
, y_label = "Percent" #"SNP diversity"
, bp_plot_title = "nsSNP diversity"
, title_colour = "black" #"chocolate4"
, subtitle_text = NULL
, sts = 20
, subtitle_colour = "#350E20FF")
#=============================================
# Output plots: Lineage count and Diversity
#=============================================
# lineage_bp_CL = paste0(outdir_images
# ,tolower(gene)
# ,"_lineage_bp_CL_Tall.svg")
#
# cat("Lineage barplots:", lineage_bp_CL)
# svg(lineage_bp_CL, width = 8, height = 15)
#
# cowplot::plot_grid(lin_countP, lin_diversityP
# #, labels = c("(a)", "(b)", "(c)", "(d)")
# , nrow = 2
# # , ncols = 2
# , labels = "AUTO"
# , label_size = 25)
#
# dev.off()
########################################################################
###################################################
# Stability dist #
###################################################
# scaled_cols_stability = c("duet_scaled"
# , "deepddg_scaled"
# , "ddg_dynamut2_scaled"
# , "foldx_scaled"
# , "avg_stability_scaled")
my_xlabel = paste0("Average stability ", "(", stability_suffix, ")"); my_xlabel
#plotdf = merged_df2[merged_df2$lineage%in%c("L1", "L2", "L3", "L4"),]
linP_dm_om = lineage_distP(merged_df2
, with_facet = F
, x_axis = "avg_stability_scaled"
, y_axis = "lineage_labels"
, x_lab = my_xlabel
, use_lineages = c("L1", "L2", "L3", "L4")
#, fill_categ = "mutation_info_orig", fill_categ_cols = c("#E69F00", "#999999")
, fill_categ = "sensitivity"
, fill_categ_cols = c("red", "blue")
, label_categories = c("Resistant", "Sensitive")
, leg_label = "Mutation group"
, my_ats = 22 # axis text size
, my_als = 22 # axis label size
, my_leg_ts = 22
, my_leg_title = 22
, my_strip_ts = 22
, alpha = 0.56
)
linP_dm_om
###################################################
# Affinity dist [OPTIONAL] #
###################################################
# scaled_cols_affinity = c("affinity_scaled"
# , "mmcsm_lig_scaled"
# , "mcsm_ppi2_scaled"
# , "mcsm_na_scaled"
# , "avg_lig_affinity_scaled")
# lineage_distP(merged_df2
# , with_facet = F
# , x_axis = "avg_lig_affinity_scaled"
# , y_axis = "lineage_labels"
# , x_lab = my_xlabel
# , use_lineages = c("L1", "L2", "L3", "L4")
# #, fill_categ = "mutation_info_orig", fill_categ_cols = c("#E69F00", "#999999")
# , fill_categ = "sensitivity"
# , fill_categ_cols = c("red", "blue")
# , label_categories = c("Resistant", "Sensitive")
# , leg_label = "Mutation group"
# , my_ats = 22 # axis text size
# , my_als = 22 # axis label size
# , my_leg_ts = 22
# , my_leg_title = 22
# , my_strip_ts = 22
# , alpha = 0.56
# )