跟著Nature學(xué)作圖:R語(yǔ)言ggplot2三角熱圖按照指定的角度旋轉(zhuǎn)

論文

Whole-genome doubling drives oncogenic loss of chromatin segregation

https://www.nature.com/articles/s41586-023-05794-2#MOESM10

作圖數(shù)據(jù)都有粘捎,論文中的圖也很好看雕凹,抽時(shí)間復(fù)現(xiàn)

今天的推文復(fù)現(xiàn)一下論文中的Figure 1e 三角熱圖

ggplot2能夠做這種三角熱圖顷霹,但是怎么讓熱圖的尖朝上,之前還沒(méi)有嘗試過(guò),基本思路就是可以讓整個(gè)圖進(jìn)行旋轉(zhuǎn),查了一下怎么讓ggplot2整體旋轉(zhuǎn),很多都是借助grid包的語(yǔ)法來(lái)實(shí)現(xiàn)趟卸,但是grid的作圖我還不是很理解,找了好長(zhǎng)時(shí)間看有沒(méi)有g(shù)gplot2的擴(kuò)展包可以做氏义,找到了一個(gè)參考鏈接

http://www.reibang.com/p/802bdefa8feb

這里借助cowplot和ggplotify兩個(gè)R包

一個(gè)簡(jiǎn)單的小例子

library(ggplot2)

pp<-ggplot()+
  geom_point(aes(x=1,y=1))+
  coord_cartesian(clip = "off")

pp
cowplot::ggdraw()+
  cowplot::draw_plot(ggplotify::as.ggplot(pp,angle = -45),
            width = 0.5,height = 0.5,
            hjust = -0.2,
            vjust = -0.5)
image.png

然后用推文中的示例數(shù)據(jù)

image.png

其中一個(gè)小圖的部分示例數(shù)據(jù)

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

library(readxl)
#install.packages("rlang")
dat<-read_excel("data/20230327/Figure1d.xlsx")
dat

普通三角熱圖

library(ggplot2)
ggplot(data=dat,aes(x=x,y=y))+
  geom_tile(aes(fill=log2(value)))+
  coord_equal(clip = "off") -> p

p
image.png

添加文本標(biāo)簽

library(tidyverse)
dat %>% pull(x) %>% unique()
p+
  geom_text(data=data.frame(x=1:8,y=0:7,label=dat %>% pull(x) %>% unique()),
            aes(x=x,y=y,label=label),angle=90)+
  theme_void() -> p1
p1
image.png

在指定的地方添加線段

p1+
  geom_path(data=data.frame(x=c(0.5,0.5,4.5,4.5,3.5,3.5,2.5,2.5,1.5,1.5,0.5),
                            y=c(0.5,4.5,4.5,3.5,3.5,2.5,2.5,1.5,1.5,0.5,0.5)),
            aes(x=x,y=y),
            color="black",size=1)+
  geom_path(data=data.frame(x=c(0.5,0.5,4.5,4.5,3.5,3.5,2.5,2.5,1.5,1.5,0.5)+4,
                            y=c(0.5,4.5,4.5,3.5,3.5,2.5,2.5,1.5,1.5,0.5,0.5)+4),
            aes(x=x,y=y),
            color="black",size=1) -> p2
p2

image.png

更改配色

p2+
  scale_fill_gradient2(low = scales::muted("red"),
                       mid = "white",
                       high = scales::muted("blue"),
                       midpoint = 0)+
  theme(legend.position = "none") -> p3
p3
image.png

添加一些額外的注釋

p3+
  annotate(geom = "segment",x=0.4,xend=0.4,y=0.5,yend=4.5,
           size=2,color="red")+
  annotate(geom = "text",x=0.2,y=2.5,label="A",angle=45,size=5)+
  annotate(geom = "segment",x=4.5,xend=8.5,y=8.6,yend=8.6,
           size=2,color="blue")+
  annotate(geom = "text",x=6.5,y=8.8,label="B",angle=45,size=5) -> p4
p4
image.png

最后順時(shí)針旋轉(zhuǎn)45度

library(cowplot)
ggdraw()+
  draw_plot(ggplotify::as.ggplot(p4,angle = -45),
            width = 0.7,height = 0.7,
            hjust = -0.2,
            vjust = -0.1)+
  annotate(geom = "text",x=0.5,y=0.2,label="Chromatin subcompartments") -> p5

p5
image.png

最后再給添加一個(gè)圖例

p2+
  scale_fill_gradient2(low = scales::muted("red"),
                       mid = "white",
                       high = scales::muted("blue"),
                       midpoint = 0)+
  theme(legend.position = "bottom")+
  guides(fill=guide_colorbar(title.position = "top",
                             title.hjust = 0.5,barwidth = 20)) -> p3.1


p5+
  annotation_custom(grob = ggpubr::get_legend(p3.1),
                    xmin = 0.1,xmax=0.9,
                    ymin=0.1,ymax=0.2)
image.png

一直會(huì)有提示信息

image.png

還可以拼圖

library(patchwork)

p6+p6
image.png

示例數(shù)據(jù)和代碼可以給推文點(diǎn)贊锄列,然后點(diǎn)擊在看,最后留言獲取

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

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

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

微信公眾號(hào)好像又有改動(dòng),如果沒(méi)有將這個(gè)公眾號(hào)設(shè)為星標(biāo)的話筋岛,會(huì)經(jīng)常錯(cuò)過(guò)公眾號(hào)的推文娶视,個(gè)人建議將 小明的數(shù)據(jù)分析筆記本 公眾號(hào)添加星標(biāo),添加方法是

點(diǎn)開(kāi)公眾號(hào)的頁(yè)面泉蝌,右上角有三個(gè)點(diǎn)

image.png

點(diǎn)擊三個(gè)點(diǎn)歇万,會(huì)跳出界面

image.png

直接點(diǎn)擊 設(shè)為星標(biāo) 就可以了

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市勋陪,隨后出現(xiàn)的幾起案子贪磺,更是在濱河造成了極大的恐慌,老刑警劉巖诅愚,帶你破解...
    沈念sama閱讀 206,126評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件寒锚,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡违孝,警方通過(guò)查閱死者的電腦和手機(jī)刹前,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,254評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)雌桑,“玉大人喇喉,你說(shuō)我怎么就攤上這事⌒?樱” “怎么了拣技?”我有些...
    開(kāi)封第一講書人閱讀 152,445評(píng)論 0 341
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)耍目。 經(jīng)常有香客問(wèn)我膏斤,道長(zhǎng),這世上最難降的妖魔是什么邪驮? 我笑而不...
    開(kāi)封第一講書人閱讀 55,185評(píng)論 1 278
  • 正文 為了忘掉前任莫辨,我火速辦了婚禮,結(jié)果婚禮上毅访,老公的妹妹穿的比我還像新娘沮榜。我一直安慰自己,他們只是感情好喻粹,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,178評(píng)論 5 371
  • 文/花漫 我一把揭開(kāi)白布敞映。 她就那樣靜靜地躺著,像睡著了一般磷斧。 火紅的嫁衣襯著肌膚如雪振愿。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書人閱讀 48,970評(píng)論 1 284
  • 那天弛饭,我揣著相機(jī)與錄音冕末,去河邊找鬼。 笑死侣颂,一個(gè)胖子當(dāng)著我的面吹牛档桃,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播憔晒,決...
    沈念sama閱讀 38,276評(píng)論 3 399
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼藻肄,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼蔑舞!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起嘹屯,我...
    開(kāi)封第一講書人閱讀 36,927評(píng)論 0 259
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤攻询,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后州弟,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體钧栖,經(jīng)...
    沈念sama閱讀 43,400評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,883評(píng)論 2 323
  • 正文 我和宋清朗相戀三年婆翔,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了拯杠。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 37,997評(píng)論 1 333
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡啃奴,死狀恐怖潭陪,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情最蕾,我是刑警寧澤畔咧,帶...
    沈念sama閱讀 33,646評(píng)論 4 322
  • 正文 年R本政府宣布,位于F島的核電站揖膜,受9級(jí)特大地震影響誓沸,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜壹粟,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,213評(píng)論 3 307
  • 文/蒙蒙 一拜隧、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧趁仙,春花似錦洪添、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書人閱讀 30,204評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至盏袄,卻和暖如春忿峻,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背辕羽。 一陣腳步聲響...
    開(kāi)封第一講書人閱讀 31,423評(píng)論 1 260
  • 我被黑心中介騙來(lái)泰國(guó)打工逛尚, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人刁愿。 一個(gè)月前我還...
    沈念sama閱讀 45,423評(píng)論 2 352
  • 正文 我出身青樓绰寞,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子滤钱,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,722評(píng)論 2 345

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