跟著Nature Genetics 學(xué)畫圖:R語言ggplot2畫箱線圖(boxplot)展示D statistic

今天推文重復(fù)的圖來自于 論文
Whole-genome resequencing of 445 Lactuca accessions reveals the domestication history of cultivated lettuce

image.png

這篇論文的數(shù)據(jù)是公開的皱碘,代碼也公開了一部分,那我們就可以按照他的提供的數(shù)據(jù)來試著復(fù)原一些論文中的圖了。
本來已經(jīng)重復(fù)到了論文中Fig1的2c,但是試著做局部放大的時候遇到了一些問題几颜,暫時還搞不定,看了其他的圖實現(xiàn)起來還有一定的難度殴玛。所以先挑一個相對比較簡單的箱線圖來模仿一下吧毕荐。 對應(yīng)的是論文中的Figure 2d

image.png

數(shù)據(jù)是論文附件的 Source Data Fig.2

image.png
首先是讀入數(shù)據(jù)
df<-readxl::read_excel("NG/41588_2021_831_MOESM5_ESM.xlsx",
                      sheet="Fig2d")

論文中提供的是寬格式數(shù)據(jù),如果使用ggplot2作圖需要轉(zhuǎn)換成長格式冕碟,這里本來想嘗試一下tidyr包中的pivot_longer()函數(shù)了拦惋,幫助文檔沒有看明白。沒有搞定安寺,還是直接使用reshape2中的melt()函數(shù)吧

library(dplyr)
df %>% 
  mutate(new_col=paste(Group1,Group2,sep="_")) %>% 
  select(-c("Group1","Group2","Group3","Outgroup")) %>% 
  #reshape2::melt(var.ids=c("Group1")) %>% 
  #arrange(Group1,Group2) %>% 
  reshape2::melt(var.ids="new_col") -> df1

head(df1)
ggplot2 作圖
library(ggplot2)
library(stringr)
library(ggprism)
x_level<-paste(df$Group1,df$Group2,sep="_")
x_level
df1$group<-str_sub(df1$new_col,5,7)
df1$new_col<-factor(df1$new_col,
                    levels = x_level)
ggplot(df1,aes(x=new_col,y=value))+
  stat_boxplot(geom = "errorbar",width=0.2)+
  geom_boxplot(outlier.shape = 1,
               aes(fill=group),
               show.legend = F)+
  scale_fill_manual(values = c("#e64b35",
                               "#4daf4a",
                               "#4dbbd5",
                               "#cab2d6",
                               "#b2df8a"))+
  scale_x_discrete(labels=str_sub(x_level,1,3),
                   guide = "prism_offset")+
  scale_y_continuous(limits = c(-0.021,0.085),
                     breaks = seq(-0.02,0.08,by=0.02))+
  theme_prism(axis_text_angle = 90,
              base_line_size = 0.1,
              base_fontface = "plain",
              base_family = "serif")+
  labs(x=NULL,
       y=expression(paste(italic("D")," statistic")))+
  theme(plot.margin = unit(c(0.2,0.2,2,0.2),'cm'))+
  
  geom_segment(x=1,xend=5,y=-0.04,yend=-0.04)+
  annotate("text",x=3,y=-0.02,label="CAU",vjust=10)+
  geom_segment(x=6,xend=9,y=-0.04,yend=-0.04)+
  annotate("text",x=7.5,y=-0.02,label="SEU",vjust=10)+
  geom_segment(x=10,xend=12,y=-0.04,yend=-0.04)+
  annotate("text",x=11.5,y=-0.02,label="WEU",vjust=10)+
  geom_segment(x=13,xend=14,y=-0.04,yend=-0.04)+
  annotate("text",x=13.5,y=-0.02,label="EEU",vjust=10)+
  geom_segment(x=14.5,xend=15.5,y=-0.04,yend=-0.04)+
  annotate("text",x=15,y=-0.02,label="WAS",vjust=10)+
  annotate("text",x=1,y=-0.02,label="P1",
           hjust=2,vjust=5)+
  annotate("text",x=1,y=-0.02,label="P2",
           hjust=2,vjust=10)+
  coord_cartesian(clip = "off")
image.png

箭頭指的地方如何用代碼縮短暫時不知道了厕妖,出圖收手動調(diào)整吧

最終結(jié)果

image.png

這里遇到的問題是

  • 如何將箱線圖的垂直線改成虛線呢?

歡迎大家關(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)系作者
  • 序言:七十年代末跋核,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子合是,更是在濱河造成了極大的恐慌了罪,老刑警劉巖,帶你破解...
    沈念sama閱讀 219,427評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件聪全,死亡現(xiàn)場離奇詭異泊藕,居然都是意外死亡,警方通過查閱死者的電腦和手機难礼,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,551評論 3 395
  • 文/潘曉璐 我一進店門娃圆,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人蛾茉,你說我怎么就攤上這事讼呢。” “怎么了谦炬?”我有些...
    開封第一講書人閱讀 165,747評論 0 356
  • 文/不壞的土叔 我叫張陵悦屏,是天一觀的道長。 經(jīng)常有香客問我键思,道長础爬,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,939評論 1 295
  • 正文 為了忘掉前任吼鳞,我火速辦了婚禮看蚜,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘赔桌。我一直安慰自己供炎,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 67,955評論 6 392
  • 文/花漫 我一把揭開白布疾党。 她就那樣靜靜地躺著音诫,像睡著了一般。 火紅的嫁衣襯著肌膚如雪雪位。 梳的紋絲不亂的頭發(fā)上竭钝,一...
    開封第一講書人閱讀 51,737評論 1 305
  • 那天,我揣著相機與錄音,去河邊找鬼蜓氨。 笑死,一個胖子當(dāng)著我的面吹牛队伟,可吹牛的內(nèi)容都是我干的穴吹。 我是一名探鬼主播,決...
    沈念sama閱讀 40,448評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼嗜侮,長吁一口氣:“原來是場噩夢啊……” “哼港令!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起锈颗,我...
    開封第一講書人閱讀 39,352評論 0 276
  • 序言:老撾萬榮一對情侶失蹤顷霹,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后击吱,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體淋淀,經(jīng)...
    沈念sama閱讀 45,834評論 1 317
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,992評論 3 338
  • 正文 我和宋清朗相戀三年覆醇,在試婚紗的時候發(fā)現(xiàn)自己被綠了朵纷。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,133評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡永脓,死狀恐怖袍辞,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情常摧,我是刑警寧澤搅吁,帶...
    沈念sama閱讀 35,815評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站落午,受9級特大地震影響谎懦,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜板甘,卻給世界環(huán)境...
    茶點故事閱讀 41,477評論 3 331
  • 文/蒙蒙 一党瓮、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧盐类,春花似錦寞奸、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,022評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至猫妙,卻和暖如春瓷翻,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,147評論 1 272
  • 我被黑心中介騙來泰國打工齐帚, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留妒牙,地道東北人。 一個月前我還...
    沈念sama閱讀 48,398評論 3 373
  • 正文 我出身青樓对妄,卻偏偏與公主長得像湘今,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子剪菱,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,077評論 2 355

推薦閱讀更多精彩內(nèi)容