r语言ggplot2一夜多图_R语言ggplot2画四方形的热图展示相关系数的简单小例子
生活随笔
收集整理的這篇文章主要介紹了
r语言ggplot2一夜多图_R语言ggplot2画四方形的热图展示相关系数的简单小例子
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
R語言里畫熱圖通常會使用pheatmap這個包。如果想使用ggplot2這個包畫熱圖的話需要借助geom_tile()這個函數。今天的內容就以相關系數的數據為例介紹一下ggplot2畫熱圖的一個簡單小例子。
視頻版
接下來是文字版
第一步是做相關性分析,獲得相關系數
R語言里做相關性分析需要準備的數據格式如下:每行是一個樣本,每列是一個變量,存儲到excel中,然后另存為csv格式數據
image.png需要示例數據的可以直接在文末留言
首先是讀入數據
df"example_data/cor_plot_example.csv",?????????????header=T,
?????????????row.names?=?1)
df
相關性分析
直接用cor()函數獲得相關系數矩陣
cordfcordf相關系數矩陣是寬格式的數據,ggplot2作圖通常是長格式數據,把寬格式變成長格式直接使用reshape2包中的melt()函數就可以了
plotdfplotdf接下來就是用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$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
歡迎大家關注我的公眾號
小明的數據分析筆記本
總結
以上是生活随笔為你收集整理的r语言ggplot2一夜多图_R语言ggplot2画四方形的热图展示相关系数的简单小例子的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: taylor+swift纽约公寓_豪宅控
- 下一篇: 7添加静态路由 hat red_两个不同