如何在R语言中建立六边形矩阵热图heatmap可视化

简介: 如何在R语言中建立六边形矩阵热图heatmap可视化

这是一个六边形热图可视化程序,主要用到的知识RColorBrewer,fields,也就是R中的可视化绘图库。

本文希望SOM的结果以六边形热图可视化。让我向您展示如何在R中创建六边形热图!

您必须根据自组织神经网络(SOM)的结果来创建自己的变量 。输入变量 Heatmap_Matrix 变量是一个矩阵,可以作为热图的数字表示。

因此,矩阵具有与SOM映射相同的行数和与SOM映射相同的列数,并且热图中的每个值表示一个六边形的值。这里 [1,1] 将成为左下节点(第一行,第一列),[1,2] 将成为右侧的节点, 将成为 [2,1] 第二行中左侧的第一个节点,依此类推。因此,从视觉上看,顺序从左下到右上,而在矩阵中,则从左上到右下。



library(RColorBrewer) #使用brewer.pallibrary(fields) #使用designer.colors
#为每个六角形创建多边形的功能
#从一个矩阵开始,该矩阵将作为您的热图的数字表示形式,称为Heatmap_Matrix

x <- as.vector(map_Matrix)
#此矩阵具有与SOM映射相同的行数和与SOM映射相同的列数,并且热图中的每个值表示一个六边形的值

#在这里[1,1]将成为左下节点(第一行,第一列),[1,2]将成为右节点[2,1]将成为第二行左侧的第一个节点

#因此,从视觉上看,可以从左下到右上工作


#SOM的行数和列数

Rows <- dim(map_Matrix)[1]Columns <- dim(map_Matrix)[2]
#为图例腾出空间

par(mar = c(0.2, 2, 2, 7))
#启动绘图窗口,但确实显示绘图上的所有轴或点

plot(0, 0, type = "n", axes = FALSE, xlim=c(0,  Columns),ylim=c(0,  Rows), xlab="", ylab= "", asp=1)
#创建调色板

#我使用designer.colors在Brewer中允许的最大数量的数值之间插入50种颜色


ColRamp <- rev(designer.colors(n=50, col=brewer.pal(9, "Spectral") )
#制作一个向量,其长度(ColRamp)的bin数在x的最小值与最大值之间.#接下来,将x中的每个点与ColorRamp中的一种颜色进行匹配
ColorCode <- rep("#FFFFFF", length(x)) #默认为全白

for (i in 1:length(x))if (!is.na(x[i])) ColorCode[i] <- ColRamp[which.min(abs(Bins-x[i]))]
#在图上实际绘制六角形多边形

offset <- 0.5 #向上移动时六边形的偏移量

for (row in 1: Rows) {for (column in 0:( Columns - 1))agon(column + offset, row - 1, col = ColorCode[row +  Rows * column])offset <- ifelse(offset, 0, 0.5)}
#在右侧添加图例
image(legend.only=TRUE, col=ColRamp, zlim=c(min(x, na.rm=T), max(x, na.rm=T)))

能够读取颜色含义的图例

在最后,创建图例,您将获得与上图类似的热图。

希望我的解释和代码能帮助您在R中创建自己漂亮的热图。


相关文章
|
2天前
|
数据可视化 前端开发 数据挖掘
R语言对综合社会调查GSS数据进行自举法bootstrap统计推断、假设检验、探索性数据分析可视化|数据分享(上)
R语言对综合社会调查GSS数据进行自举法bootstrap统计推断、假设检验、探索性数据分析可视化|数据分享
12 0
|
2天前
|
数据采集 数据可视化
R语言关联规则Apriori对杭州空气质量与气象因子数据研究可视化
R语言关联规则Apriori对杭州空气质量与气象因子数据研究可视化
|
2天前
|
前端开发 数据可视化 算法
r语言Bootstrap自助法重采样构建统计量T抽样分布近似值可视化|代码分享
r语言Bootstrap自助法重采样构建统计量T抽样分布近似值可视化|代码分享
12 2
|
2天前
|
机器学习/深度学习 数据可视化
R语言逻辑回归、决策树、随机森林、神经网络预测患者心脏病数据混淆矩阵可视化(下)
R语言逻辑回归、决策树、随机森林、神经网络预测患者心脏病数据混淆矩阵可视化
|
2天前
|
机器学习/深度学习 数据采集 数据可视化
R语言逻辑回归、决策树、随机森林、神经网络预测患者心脏病数据混淆矩阵可视化(上)
R语言逻辑回归、决策树、随机森林、神经网络预测患者心脏病数据混淆矩阵可视化
11 0
|
2天前
|
机器学习/深度学习 数据可视化 数据挖掘
R语言用逻辑回归预测BRFSS中风数据、方差分析anova、ROC曲线AUC、可视化探索
R语言用逻辑回归预测BRFSS中风数据、方差分析anova、ROC曲线AUC、可视化探索
10 0
|
2天前
|
数据可视化 Python
R语言分析糖尿病数据:多元线性模型、MANOVA、决策树、典型判别分析、HE图、Box's M检验可视化
R语言分析糖尿病数据:多元线性模型、MANOVA、决策树、典型判别分析、HE图、Box's M检验可视化
|
2天前
|
前端开发 数据可视化 数据挖掘
R语言对综合社会调查GSS数据进行自举法bootstrap统计推断、假设检验、探索性数据分析可视化|数据分享(下)
R语言对综合社会调查GSS数据进行自举法bootstrap统计推断、假设检验、探索性数据分析可视化|数据分享
14 0
|
2天前
|
机器学习/深度学习 数据可视化 数据挖掘
R语言响应面(RSM)、线性模型lm分析生产过程影响因素可视化
R语言响应面(RSM)、线性模型lm分析生产过程影响因素可视化
|
2天前
|
数据采集 数据挖掘 测试技术
python、R语言ARIMA-GARCH分析南方恒生中国企业ETF基金净值时间序列分析
python、R语言ARIMA-GARCH分析南方恒生中国企业ETF基金净值时间序列分析
13 1

热门文章

最新文章