跟著Nature Genetics學(xué)作圖:R語言ggplot2散點圖及多圖共享圖例

論文

Plasma proteome analyses in individuals of European and African ancestry identify cis-pQTLs and models for proteome-wide association studies

https://www.nature.com/articles/s41588-022-01051-w

本地pdf s41588-022-01051-w.pdf

代碼鏈接

https://zenodo.org/record/6332981#.YroV0nZBzic

https://github.com/Jingning-Zhang/PlasmaProtein/tree/v1.2

今天的推文重復(fù)一下論文中的Extended Data Fig. 2

image.png

讀取數(shù)據(jù)

library(readxl)
eqtls <- read_excel("data/20220627/ExtendedFig2.xlsx", 
                    sheet = "dat")
eqtls.2 <- read_excel("data/20220627/ExtendedFig2.xlsx", 
                      sheet = "leg")

第一個小圖a

library(latex2exp)
library(ggplot2)
im1 <- ggplot(eqtls, aes(x = 1:49,y=V2, size=sample)) +
  geom_point(alpha=1,color = eqtls$cls)+  
  theme(plot.title = element_text(hjust = 0.5,size = 7),
        axis.title.x = element_text(size = 6),
        axis.title.y = element_text(size = 6),
        panel.background = element_blank(),
        axis.text.x = element_blank(),
        axis.line = element_line(color = "black",size = 0.5),
        legend.text = element_text(size = 6),
        legend.title = element_text(size = 6),
        axis.text = element_text(size = 6)) +
  labs(title = "Overlap with eQTLs (GTEx V8)", x="Tissues",y="Proportion")+
  scale_x_continuous(breaks = NULL)+
  coord_cartesian(ylim = c(0,0.5)) + scale_fill_manual(values = as.character(eqtls$cls))
im1
image.png

這里新接觸到一個R包latex2exp,用來添加比較復(fù)雜的文本公式之類的很方便,需要好好學(xué)習(xí)一下

第二個小圖b

im2 <- ggplot(eqtls, aes(x = 1:49,y=V3, size=sample)) +
  geom_point(alpha=1,color = eqtls$cls)+ 
  theme(plot.title = element_text(hjust = 0.5,size = 7),
        axis.title.x = element_text(size = 6),
        axis.title.y = element_text(size = 6),
        panel.background = element_blank(),
        axis.text.x = element_blank(),
        axis.line = element_line(color = "black",size = 0.5),
        legend.text = element_text(size = 6),
        legend.title = element_text(size = 6),
        axis.text = element_text(size = 6)) +
  labs(title = "Colocalization with eQTLs (GTEx V8)", x="Tissues",y="Proportion")+
  scale_x_continuous(breaks = NULL)+
  coord_cartesian(ylim = c(0,0.25)) + 
  scale_fill_manual(values = as.character(eqtls$cls))

im2

image.png

貢獻的圖例

im3 <- ggplot(eqtls.2, aes(x = 1:49,y = V3)) + 
  geom_point(aes(color = tissues)) +
  scale_color_manual(name = "GTEx V8 tissues",
                     values = myColors) +
  theme(
    legend.key = element_blank(),
    legend.key.size = unit(2, "mm"),
    panel.border = element_blank(),
    panel.grid.major = element_blank(),
    panel.grid.minor = element_blank(),
    panel.background = element_blank(), 
    title = element_text(size = 7),
    text = element_text(size = 6)
  ) +
  guides(color=guide_legend(ncol = 1))
im3
library(ggpubr)
pm3 <- as_ggplot(get_legend(im3))
pm3

image.png

這里新接觸到一個知識點是 ggplot2作圖的圖例可以單獨提取出來然后和其他圖去拼圖

最后是拼圖

p <- ggarrange(ggarrange(im1, im2,
                         nrow = 2, labels = c("a", "b"),
                         heights = c(0.5,0.5)),
               pm3,
               ncol = 2, 
               labels = c(NA, NA),
               widths = c(0.7,0.3)
)
p

image.png

示例數(shù)據(jù)和代碼可以自己到論文中獲取,或者給本篇推文點贊,點擊在看,然后留言獲取

歡迎大家關(guān)注我的公眾號

小明的數(shù)據(jù)分析筆記本

小明的數(shù)據(jù)分析筆記本 公眾號 主要分享:1、R語言和python做數(shù)據(jù)分析和數(shù)據(jù)可視化的簡單小例子;2、園藝植物相關(guān)轉(zhuǎn)錄組學(xué)、基因組學(xué)、群體遺傳學(xué)文獻閱讀筆記;3、生物信息學(xué)入門學(xué)習(xí)資料及自己的學(xué)習(xí)筆記!

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容