039 进化树




# 安装R包  
if (!requireNamespace("BiocManager", quietly = TRUE))  
install.packages("BiocManager")  
  
BiocManager::install("ggtreeExtra")  
BiocManager::install("ggtree")  
  
#加载R包  
library(ggtreeExtra)  
library(ggtree)  
library(ggplot2)  
library(ggtreeExtra)  
library(patchwork)  
library(ggridges)  
library(phyloseq)

data("GlobalPatterns")  
  
GP <- GlobalPatterns  
  
  
GP <- prune_taxa(taxa_sums(GP) > 1000, GP)  
sample_data(GP)$human <- get_variable(GP, "SampleType") %in%  
c("Feces", "Skin")  
mergedGP <- merge_samples(GP, "SampleType")  
mergedGP <- rarefy_even_depth(mergedGP, rngseed=1024)  
mergedGP <- tax_glom(mergedGP,"Order")  
  
melt_simple <- psmelt(mergedGP) %>%  
dplyr::filter(Abundance < 120) %>%  
dplyr::select(OTU, val=Abundance)

p1 <- ggtree(mergedGP, size = 0.3) +  
geom_tippoint(  
mapping=aes(color = Phylum),  
show.legend = FALSE,  
size=0.6  
)+  
# 添加山峦图  
geom_fruit(  
data = melt_simple,  
geom = geom_density_ridges,  
mapping = aes(  
y = OTU,  
x = val,  
fill = Phylum  
),  
offset = 0.12,  
pwidth = 0.4,  
lwd = .05,  
axis.params = list(  
axis = "x",  
text.size = 1,  
hjust = 0.5,  
vjust = 1  
),  
grid.params = list(),  
show.legend = FALSE  
)

p1

p1 + layout_circular()

p2 <- ggtree(mergedGP, size = 0.3) +  
geom_tippoint(  
mapping=aes(color = Phylum),  
show.legend = FALSE,  
size=0.6  
)+  
scale_color_viridis_d() +  
geom_fruit(  
data = melt_simple,  
geom = geom_boxplot,  
mapping = aes(  
y = OTU,  
x = val,  
fill = Phylum  
),  
offset = 0.12,  
pwidth = 0.4,  
size = 0.1,  
outlier.size = 0.4,  
outlier.stroke = 0.06,  
outlier.shape = 21,  
axis.params = list(  
axis = "x",  
text.size = 1,  
hjust = 0.5,  
vjust = 1  
),  
grid.params = list(),  
show.legend = FALSE  
) + scale_fill_viridis_d()  
  
p2  
  
ggsave("./Input/Fig3.jpg",height = 6, width = 8)

p2 + layout_circular()  
  
ggsave("./Input/Fig4.jpg",height = 6, width = 6)