R語言ggplot2畫四方形的熱圖展示相關系數的簡單小例子

R語言里畫熱圖通常會使用pheatmap這個包谒拴。如果想使用ggplot2這個包畫熱圖的話需要借助geom_tile()這個函數蜜唾。今天的內容就以相關系數的數據為例介紹一下ggplot2畫熱圖的一個簡單小例子榜聂。

第一步是做相關性分析,獲得相關系數

R語言里做相關性分析需要準備的數據格式如下:每行是一個樣本柜去,每列是一個變量喻鳄,存儲到excel中憨闰,然后另存為csv格式數據

image.png

需要示例數據的可以直接在文末留言

首先是讀入數據
df<-read.csv("example_data/cor_plot_example.csv",
             header=T,
             row.names = 1)
df
相關性分析

直接用cor()函數獲得相關系數矩陣

cordf<-cor(df)
cordf
相關系數矩陣是寬格式的數據状蜗,ggplot2作圖通常是長格式數據,把寬格式變成長格式直接使用reshape2包中的melt()函數就可以了
plotdf<-reshape2::melt(cordf)
plotdf
接下來就是用ggplot2畫圖了

最基本的熱圖

library(ggplot2)
ggplot(plotdf,aes(x=Var1,y=Var2))+
  geom_tile(aes(fill=value))
image.png
更改配色
ggplot(plotdf,aes(x=Var1,y=Var2))+
  geom_tile(aes(fill=value))+
  scale_fill_gradient2(low="green",mid="white",high = "red")
image.png
將相關系數的數值作為文字標簽
ggplot(plotdf,aes(x=Var1,y=Var2))+
  geom_tile(aes(fill=value))+
  scale_fill_gradient2(low="green",mid="white",high = "red")+
  geom_text(aes(label=value))
image.png
相關系數的小數位數太多鹉动,我們只保留兩位
plotdf$value<-round(plotdf$value,2)
ggplot(plotdf,aes(x=Var1,y=Var2))+
  geom_tile(aes(fill=value))+
  scale_fill_gradient2(low="green",mid="white",high = "red")+
  geom_text(aes(label=value))
image.png
這樣最基本的熱圖就做好了轧坎,接下來是簡單的美化

包括去掉灰色背景,去掉坐標軸的標題和小短線

ggplot(plotdf,aes(x=Var1,y=Var2))+
  geom_tile(aes(fill=value))+
  scale_fill_gradient2(low="green",mid="white",high = "red")+
  geom_text(aes(label=value))+
  theme(panel.background = element_blank(),
        axis.title = element_blank(),
        axis.ticks = element_blank())
image.png

歡迎大家關注我的公眾號
小明的數據分析筆記本

?著作權歸作者所有,轉載或內容合作請聯系作者
  • 序言:七十年代末泽示,一起剝皮案震驚了整個濱河市缸血,隨后出現的幾起案子,更是在濱河造成了極大的恐慌械筛,老刑警劉巖捎泻,帶你破解...
    沈念sama閱讀 221,635評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現場離奇詭異埋哟,居然都是意外死亡笆豁,警方通過查閱死者的電腦和手機,發(fā)現死者居然都...
    沈念sama閱讀 94,543評論 3 399
  • 文/潘曉璐 我一進店門赤赊,熙熙樓的掌柜王于貴愁眉苦臉地迎上來渔呵,“玉大人,你說我怎么就攤上這事砍鸠。” “怎么了耕驰?”我有些...
    開封第一講書人閱讀 168,083評論 0 360
  • 文/不壞的土叔 我叫張陵爷辱,是天一觀的道長。 經常有香客問我朦肘,道長饭弓,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 59,640評論 1 296
  • 正文 為了忘掉前任媒抠,我火速辦了婚禮弟断,結果婚禮上,老公的妹妹穿的比我還像新娘趴生。我一直安慰自己阀趴,他們只是感情好昏翰,可當我...
    茶點故事閱讀 68,640評論 6 397
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著刘急,像睡著了一般棚菊。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上叔汁,一...
    開封第一講書人閱讀 52,262評論 1 308
  • 那天统求,我揣著相機與錄音,去河邊找鬼据块。 笑死码邻,一個胖子當著我的面吹牛,可吹牛的內容都是我干的另假。 我是一名探鬼主播像屋,決...
    沈念sama閱讀 40,833評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼浪谴!你這毒婦竟也來了开睡?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 39,736評論 0 276
  • 序言:老撾萬榮一對情侶失蹤苟耻,失蹤者是張志新(化名)和其女友劉穎篇恒,沒想到半個月后,有當地人在樹林里發(fā)現了一具尸體凶杖,經...
    沈念sama閱讀 46,280評論 1 319
  • 正文 獨居荒郊野嶺守林人離奇死亡胁艰,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 38,369評論 3 340
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現自己被綠了智蝠。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片腾么。...
    茶點故事閱讀 40,503評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖杈湾,靈堂內的尸體忽然破棺而出解虱,到底是詐尸還是另有隱情,我是刑警寧澤漆撞,帶...
    沈念sama閱讀 36,185評論 5 350
  • 正文 年R本政府宣布殴泰,位于F島的核電站,受9級特大地震影響浮驳,放射性物質發(fā)生泄漏悍汛。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,870評論 3 333
  • 文/蒙蒙 一至会、第九天 我趴在偏房一處隱蔽的房頂上張望离咐。 院中可真熱鬧,春花似錦奉件、人聲如沸宵蛀。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,340評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽糖埋。三九已至宣吱,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間瞳别,已是汗流浹背征候。 一陣腳步聲響...
    開封第一講書人閱讀 33,460評論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留祟敛,地道東北人疤坝。 一個月前我還...
    沈念sama閱讀 48,909評論 3 376
  • 正文 我出身青樓,卻偏偏與公主長得像馆铁,于是被迫代替她去往敵國和親跑揉。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 45,512評論 2 359

推薦閱讀更多精彩內容