今天學習繪制下面這個paper里面的一個圖蚊逢。
從圖中聂宾,可以看出夕膀,圖片分成2個部分虚倒,左邊是進化樹美侦,右邊是類似氣泡圖。
下面我們用一組簡單的文件進行測試:
進化樹文件:
(((A8:0.9735669859,((A5:0.7219205995,A9:0.5385038075):0.6462689626,A1:0.3329299772):0.03139768029):0.06015197909,A10:0.4923124262):0.4108513703,(((A6:0.8690173309,A4:0.5830903472):0.309844861,(A3:0.5314095169,A7:0.8771070722):0.7551963951):0.5753640204,A2:0.7064118343):0.2585936433);
這個是一個簡單的對每一個節(jié)點的分類文件:
library(ggtree)
library(treeio)
library(readxl)
library(tidyverse)
tree<-read.tree("tree.txt")
dat01<-read.table("group.txt",header=T)
tree<-full_join(tree,dat01,by="label")
p1<-ggtree(tree)+
geom_tiplab(align = TRUE,fontface=3)+
geom_tippoint(aes(color=groupinfo),
? ? ? ? ? ? ? ? show.legend = F,
? ? ? ? ? ? ? ? size=5)+
scale_color_manual(values = c('group1'='#df237b','group2'='#11926a'))+
xlim(0,3)
p1
然后魂奥,隨機生成了一個基本的表達值文件菠剩,只做測試,不具備任何生物學意義耻煤。
dat02<-read.table("exp.txt",header=T)
dat02$tiplabel<-factor(dat02$tiplabel,levels = p1$data %>% na.omit() %>% arrange(y) %>% pull(label))? ?#主要調(diào)整控制氣泡圖中sample的順序具壮,和進化樹保持一致
p2 <- ggplot(data=dat02,aes(x=FC,y=tiplabel))+
geom_point(aes(size=Mean,fill=groupinfo),shape=21)+
geom_vline(xintercept = 0,lty="dashed",color="grey")+
facet_wrap(~species,nrow = 1,scales = 'free')+
scale_fill_manual(values = c('group1'='#df237b','group2'='#11926a'))+
guides(size=guide_legend(order = 1), fill=guide_legend(order = 2))+
theme_minimal()+
theme(legend.position = 'bottom',
? ? ? ? legend.direction = 'vertical',
? ? ? ? legend.justification = c(0,0),
? ? ? ? axis.line.x = element_line(),
? ? ? ? axis.ticks.x = element_line(),
? ? ? ? axis.title.y = element_blank(),
? ? ? ? axis.text.y = element_blank(),
? ? ? ? panel.grid = element_blank(),
? ? ? ? strip.background = element_rect(fill = "grey"))
p2
library(patchwork)
p1+p2+plot_layout(widths = c(1,4))