跟着Nature Genetics学画图:R语言ggplot2画曼哈顿图展示XP-CLR score

今天推文重复的图来自于 论文
Whole-genome resequencing of 445 Lactuca accessions reveals the domestication history of cultivated lettuce

image.png

今天试着重复的图片对应着的是论文中的Figure3a,,曼哈顿图展示的是XP-CLR score,这个分支具体是什么含义还得仔细学习,群体基因组类的论文通常都有这个

数据可以直接在论文的补充材料下载

首先是读入数据
df<-readxl::read_excel("NG/41588_2021_831_MOESM6_ESM.xlsx",
                       sheet = "Fig3a")
head(df)
这里作图我们用连续型的x轴,连续型的数据操作坐标轴容易一些
library(stringr)
df$x<-as.numeric(str_replace(df$Chromosome,"chr",""))
head(df)

这里用到了一个R包ggh4x,可以很方便的操作坐标轴,具体可以参考推文 通过ggh4x调整ggplot2图形刻度

完整的作图代码
library(ggplot2)
#install.packages("ggh4x")
library(ggh4x)
p1<-ggplot(data=df,aes(x=x,y=`XP-CLR score`))+
  geom_jitter(aes(color=Chromosome),width = 0.5)+
  scale_y_continuous(#expand = c(0,0),
                     breaks = c(0,50,100,150,200),
                     labels = c(0,50,100,150,200))+
  theme_bw()+
  theme(legend.position = "none",
        panel.grid = element_blank(),
        panel.border = element_blank(),
        axis.line.x = element_line(),
        axis.line.y = element_line())+
  scale_x_continuous(breaks=seq(0.5,9.5,by=1),
                     labels = c(1:9,""))+
  theme(axis.text.x = element_text(hjust=-4))+
  guides(x=guide_axis_truncated(trunc_lower = 0.5,
                                trunc_upper = 9.5),
         y=guide_axis_truncated(trunc_lower = 0,
                                trunc_upper = 200))+
  annotate(geom = "segment",
           x=3,xend=3,
           y=180,yend=120,
           arrow=arrow(length = unit(0.1,'cm')))+
  annotate(geom = "text",x=3,y=185,label="qLFD")+
  scale_color_manual(values = c(rep(c("#e64a37","#3c5588"),4),"#e64a37"))+
  labs(x="Chromosome")
ggsave(filename = "p1-3.png",
       p1,
       width=8,
       height = 4)  
最终结果
image.png

这里遇到的问题是

  • 如果设置 scale_y_continuous(expand = c(0,0)) 刻度上的0就是显示不出来,暂时还搞不懂啥原因

  • 这种找自己感兴趣的点标注箭头,位置坐标不太好确定

时间原因就不解释代码了,大家感兴趣可以自己试着运行,直接点赞和点击在看,然后后台回复 20210514即可获得代码和数据

欢迎大家关注我的公众号

小明的数据分析笔记本

小明的数据分析笔记本 公众号 主要分享:1、R语言和python做数据分析和数据可视化的简单小例子;2、园艺植物相关转录组学、基因组学、群体遗传学文献阅读笔记;3、生物信息学入门学习资料及自己的学习笔记!

你可能感兴趣的:(跟着Nature Genetics学画图:R语言ggplot2画曼哈顿图展示XP-CLR score)