R语言绘制热图

热图因其丰富的色彩变化和生动饱满的信息表达被广泛应用于各大数据分析场景。
  • 数据准备
library(RColorBrewer)
library(gplots)

使用R自带的数据集mtcars
首先对数据进行归一化、矩阵化并作图

x<-as.matrix(scale(mtcars))
heatmap(x,scale = "none",col=topo.colors(100)) #x:数据矩阵 scale:表示不同方向,可选值:row,columa,none

图片描述

自定义三个颜色

col<-colorRampPalette(c("red","white","blue"))(256)
heatmap(x,scale = "none",col=col)

图片描述

自定义调色板

library(RColorBrewer)
mycol<-colorRampPalette(brewer.pal(8,"PiYG"))(256)
dim(x)#确定数据集x的维度,绘行列注释图颜色时会用到。
heatmap(x,scale = "none",col=mycol,RowSideColors = rep(c("green3","pink"),each=16),
        ColSideColors = c(rep("pink",5),rep("green3",6)))

参数RowSideColors和ColSideColors用于分别注释行和列颜色等。其他参数参考:?heatmap()

图片描述

增强热图

library(gplots)
heatmap.2(x,scale = "none",col=bluered(100),trace = "none",density.info = "none")

其他参数参考:?heatmap.2()
图片描述

### 使用R语言绘制的方法 在R语言中,有多种包可以用来绘制。以下是几种常用方法: #### 1. 使用`pheatmap`包 `pheatmap`包提供了简单而美观的方式来生成,并且支持自动聚类和注释功能。 ```r # 安装并加载pheatmap包 install.packages("pheatmap") library(pheatmap) # 创建一个示例矩阵数据 matrix_data <- matrix(rnorm(100), nrow = 10) rownames(matrix_data) <- paste0("Row", 1:10) colnames(matrix_data) <- paste0("Col", 1:10) # 使用pheatmap绘制 pheatmap(matrix_data) ``` #### 2. 使用`gplots`包中的`heatmap.2`函数 `gplots`包中的`heatmap.2`函数也是一个常用的工具,它提供了更多的自定义选项。 ```r # 安装并加载gplots包 install.packages("gplots") library(gplots) # 使用heatmap.2函数创建 heatmap.2(matrix_data) ``` #### 3. 使用`ggplot2`包 `ggplot2`是一个强大的绘包,可以通过`geom_tile()`函数来创建。 ```r # 安装并加载ggplot2包 install.packages("ggplot2") library(ggplot2) # 将矩阵数据转换为数据框格式 df_data <- reshape2::melt(matrix_data) # 使用ggplot2绘制 ggplot(data = df_data, aes(x = Var2, y = Var1, fill = value)) + geom_tile() + scale_fill_gradient(low = "white", high = "steelblue") + theme_minimal() ``` #### 4. 使用基础`heatmap`函数 R语言的基础安装也提供了一个简单的`heatmap`函数来生成。 ```r # 使用基础heatmap函数创建 heatmap(matrix_data) ``` 这些方法都可以根据具体需求进行调整,以生成符合要求的[^1]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值