【R语言】热力图

热力图是一种可视化数据的方法,通常用于显示矩阵或网格数据的模式和趋势。它的主要特点是使用颜色来表示数据的数值大小,从而让观察者可以直观地理解数据的分布情况。

在一个热力图中,数据被组织成一个二维的矩阵,每个单元格代表一个数据点。单元格的颜色根据数据的数值大小进行着色,通常使用渐变色来表示不同数值的大小,比如较小的值可能用较浅的颜色,较大的值用较深的颜色。如下图所示:

代码如下:

R 复制代码
library(lattice) #导入lattice包

data <-  matrix(rnorm(100), nrow = 10, ncol = 10) #使用matrix()函数生成一个大小为10x10的随机矩阵data,矩阵中的值是从标准正态分布中随机抽取的
rownames(data) <- paste(seq(1, 10, by = 1), sep="") #使用paste()函数生成行和列的名称,行名为"1"到"10",列名也为"1"到"10"
colnames(data) <- paste(seq(1, 10, by = 1), sep="") 
myPanel <- function(x, y, z, ...) {
  panel.levelplot(x, y, z, ...) #定义了一个自定义的绘图函数myPanel,该函数用于绘制每个矩形格子中的内容。这个函数接受四个参数:x表示横坐标,y表示纵坐标,z表示要绘制的值,...表示其他参数
  panel.text(x, y , ifelse(z > 0, "+", "-"),cex = 1, col = "black") #在myPanel函数中,首先调用panel.levelplot()函数绘制矩形格子,然后根据每个格子的值决定在格子中心显示"+"或"-",并使用panel.text()函数实现
  ifelse(z > 0, "+", "-") #表示如果z的值大于0,则显示"+",否则显示"-"
}
levelplot(data, panel = myPanel, aspect = 1) #使用levelplot()函数绘制矩阵数据的等值图,其中panel参数指定使用自定义的绘图函数myPanel,aspect参数指定方块的宽高比例为1
相关推荐
小洁忘了怎么分身11 小时前
多样本空间转录组 Harmony 整合与标签转移指南
网络·r语言·生信分析
临床数据科学和人工智能兴趣组21 小时前
在R语言中,数据存储和读取是数据分析工作的重要环节
r语言·r语言-4.2.1
赵钰老师3 天前
R语言数据统计分析与ggplot2高级绘图
开发语言·数据分析·r语言
开开心心_Every3 天前
电脑文件搜索软件支持内容和拼音搜索
linux·服务器·人工智能·r语言·pdf·音视频·symfony
AAIshangyanxiu4 天前
R语言数据统计分析与ggplot2高级绘图实践应用
开发语言·r语言·ggplot2
青春不败 177-3266-05204 天前
R语言数据统计分析与ggplot2高级绘图
r语言·生态学·科研绘图·统计学·ggplot2·环境科学
临床数据科学和人工智能兴趣组4 天前
R Markdown 如何写
人工智能·机器学习·数据分析·r语言·r语言-4.2.1
酷在前行5 天前
【R生态】PERMANOVA 进阶实战:距离选择、PERMDISP、两两比较与受限置换(保姆级教程)
开发语言·r语言
临床数据科学和人工智能兴趣组5 天前
要使用 R Markdown,首先需要安装 R 和 RStudio,接着安装 rmarkdown 包
开发语言·数据挖掘·数据分析·r语言·r语言-4.2.1
酷在前行6 天前
【R绘图】Nature Communications 半眼图复刻:分布、区间与多面板排版(保姆级教程)
android·开发语言·r语言