Figure S3B

Code
# Inma Hernandez Lopez
# inmaculada.hernandez-lopez@ukr.de
# LIT -  Leibniz-Institute für Immunotherapie

# Marc Elosua Bayés
# marc.elosua@cnag.crg.eu
# CNAG - CRG

# Enrique Blanco Carmona
# e.blancocarmona@kitz-heidelberg.de
# PhD Student – Clinical Bioinformatics
# Division of Pediatric Neurooncology (B062)
# DKFZ-KiTZ | Germany

proportions <- readRDS("/omics/odcf/analysis/OE0145_projects/idh_gliomas/Figures_Science/revision/IDH_gliomas_book/datasets/spotlight_deconv_astr_pseudobulk_long.rds")
proportions$cell_type[proportions$cell_type == "RA"] <- "RE"
cluster_cols <- c("RE" = "#ECA809",
                  "OPC-like" = "#043362",                    
                  "T Cell" = "#009FF5",                   
                  "Oligodendrocytes" = "#BC5210",            
                  "Astrocytes" = "#279185",                  
                  "Microglia" = "#7EB356",                   
                  "Pericytes" = "#AC70FF",                  
                  "Mixed" = "#8d5d3f",                   
                  "Gradient" = "#D6D6D6",                    
                  "Neurons" = "#544B81",                   
                  "Endothelial" = "#da627d",                 
                  "Astro-like" = "#9A031E",               
                  "Cycling" = "#5F0F40")
Code
p <- proportions %>% 
     ggplot2::ggplot(mapping = ggplot2::aes(x = .data$ID,
                                            y = .data$proportion,
                                            fill = .data$cell_type)) + 
     ggplot2::geom_col(color = "black", position = "fill") + 
     ggplot2::scale_fill_manual(values = cluster_cols, name = "") + 
     ggplot2::theme_minimal(base_size = 20) +
     ggplot2::labs(x = "Patient",
                   y = "Proportion",
                   title = "Astrocytoma") +
     ggplot2::theme(axis.title = ggplot2::element_text(color = "black",
                                                         face = "bold"),
                      axis.line.x = ggplot2::element_line(color = "black"),
                      axis.line.y = ggplot2::element_blank(),
                      axis.text.x = ggplot2::element_text(color = "black",
                                                          face = "plain",
                                                          angle = SCpubr:::get_axis_parameters(angle = 45, flip = FALSE)[["angle"]],
                                                          hjust = SCpubr:::get_axis_parameters(angle = 45, flip = FALSE)[["hjust"]],
                                                          vjust = SCpubr:::get_axis_parameters(angle = 45, flip = FALSE)[["vjust"]]),
                      axis.text.y = ggplot2::element_text(color = "black", face = "plain"),
                      axis.ticks = ggplot2::element_line(color = "black"),
                      plot.title.position = "plot",
                      plot.title = ggplot2::element_text(face = "bold", hjust = 0.5),
                      plot.subtitle = ggplot2::element_text(face = "plain", hjust = 0),
                      plot.caption = ggplot2::element_text(face = "plain", hjust = 1),
                      panel.grid = ggplot2::element_blank(),
                      text = ggplot2::element_text(family = "sans"),
                      plot.caption.position = "plot",
                      legend.text = ggplot2::element_text(face = "plain"),
                      legend.position = "bottom",
                      legend.title = ggplot2::element_text(face = "bold"),
                      legend.justification = "center",
                      plot.margin = ggplot2::margin(t = 10, r = 10, b = 10, l = 10),
                      plot.background = ggplot2::element_rect(fill = "white", color = "white"),
                      panel.background = ggplot2::element_rect(fill = "white", color = "white"),
                      legend.background = ggplot2::element_rect(fill = "white", color = "white"),
                      strip.text = ggplot2::element_text(color = "black", face = "bold"),
                      strip.background = ggplot2::element_blank())