ggplot2 画个基因结构示意图

画个简单的基因结构示意图,示意突变位点所在位置。
首先查找某个基因的所有外显子的起始位置,对应数据xx。
再给出突变位点信息,对应数据xxx。

library(Homo.sapiens)
library(ggplot2)

xx <- select(Homo.sapiens,keys="DSCC1",
             columns=c("EXONEND","EXONID","EXONSTART","EXONSTRAND" ),
             keytype = "SYMBOL")

xxx <- data.frame(x=c(120850000,120860000,120865000),ymin=0,ymax=0.3,
                  txt=c("T>C","T>A","C>G"))
p1 <- ggplot() + 
  geom_point(data=xxx,aes(x=x,y=ymax),color="red",size=8)+
  geom_linerange(data=xxx,aes(x=x,ymin=ymin,ymax=ymax),color="red")+
  geom_hline(yintercept=0)+
  geom_text(data=xxx,aes(x=x,y=ymax+ 0.1,label=txt,size=12))+
  geom_rect(data=xx,aes(xmin=EXONSTART, xmax=EXONEND,ymin= -0.1,ymax=0.1),fill="#282a73")+
  labs(title="GENE",subtitle = "Chr8:100000-200000")+
  ggplot2::theme(
    title = element_text(size=18,face="bold"),
    axis.title = element_blank(),
    axis.text.x = element_text(color = "black",angle = 90,size=12),
    axis.text.y= element_blank(),
    axis.ticks.x= element_line(colour = "black"),
    axis.ticks.y=element_blank(),
    panel.grid =element_blank(),
    panel.background = element_blank(),
    panel.border=element_blank(),
    legend.position = "none")
p1

你可能感兴趣的:(ggplot2 画个基因结构示意图)