CAZY
cazy_genes <- genome_annotations %>%
filter(!is.na(cazy)) %>%
nrow()
cazy_genes
[1] 15569
cazy_abundance <- genome_annotations %>%
filter(!is.na(cazy)) %>%
group_by(genome, cazy) %>%
summarise(count = n(), .groups="drop") %>%
tidyr::pivot_wider(
names_from = cazy,
values_from = count,
values_fill = 0
)
cazy_matrix <- cazy_abundance %>%
column_to_rownames("genome") %>%
as.matrix()
# Abundance heatmap
min_val <- min(cazy_matrix, na.rm = TRUE)
max_val <- max(cazy_matrix, na.rm = TRUE)
colors <- viridis(100, option = "viridis")
breaks <- seq(min_val, max_val, length.out = 101)
pheatmap( cazy_matrix,
color = colors,
cluster_rows = FALSE,
cluster_cols = TRUE,
fontsize = 9,
border_color = NA
)

#Scaled abundance heatmap
cazy_scaled <- scale(cazy_matrix, center = TRUE, scale = TRUE)
min_val <- min(cazy_scaled, na.rm = TRUE)
max_val <- max(cazy_scaled, na.rm = TRUE)
colors <- viridis(100, option = "viridis")
breaks <- seq(min_val, max_val, length.out = 101)
Defense
genome_annotations %>% dplyr::select(genome, defense, defense_type, antidefense, antidefense_type) %>%
filter(!is.na(defense))
# A tibble: 1,071 × 5
genome defense defense_type antidefense antidefense_type
<chr> <chr> <chr> <lgl> <lgl>
1 EHM042508 AbiG__AbiGii AbiG NA NA
2 EHM042508 AbiG__AbiGi AbiG NA NA
3 EHM042508 AbiD__AbiD AbiD NA NA
4 EHM042508 Dodola__DolA Dodola NA NA
5 EHM042508 Dodola__DolB Dodola NA NA
6 GCF_030545485.1 Abi2__Abi_2 Abi2 NA NA
7 GCF_030545485.1 AbiH__AbiH AbiH NA NA
8 EHM013277 VP1851__VP1851 VP1851 NA NA
9 EHM013277 RM__Type_I_MTases_FAM_0 RM NA NA
10 EHM013277 RM__Type_I_S_01 RM NA NA
# ℹ 1,061 more rows
PCoAs KEGG, AMR and VF
library(patchwork)
combined_plot <- (pcoa_kegg_pa + ggtitle("PCoA: KEGG")) +
(pcoa_amr_pa + ggtitle("PCoA: AMR")) +
(pcoa_vf_pa + ggtitle("PCoA: VF")) +
plot_layout(ncol = 2, guides = "collect") &
theme(legend.position = "bottom")
combined_plot
