You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在R语言物种共现矩阵中修改物种名称字体大小

解决R语言物种共现矩阵物种名称字体大小问题

以下针对不同常用绘图包,给出直接有效的修改方案:

1. 使用pheatmap包

直接在pheatmap()函数中指定行/列名称的字体大小参数,若之前未生效,检查是否有树形图高度挤压名称空间:

library(pheatmap)
# 构造示例共现矩阵
co_occur_matrix <- matrix(rnorm(100), nrow = 10, 
                          dimnames = list(paste0("Species_", 1:10), paste0("Species_", 1:10)))
# 设置字体大小,同时调整树形图高度避免挤压
pheatmap(co_occur_matrix, 
         fontsize_row = 8,  # 行名称(物种名)字体大小
         fontsize_col = 8,  # 列名称(物种名)字体大小
         treeheight_row = 10,  # 缩小行树形图高度
         treeheight_col = 10)  # 缩小列树形图高度

2. 使用ComplexHeatmap包

通过row_names_gp和column_names_gp参数,结合grid包的gpar()设置字体属性:

library(ComplexHeatmap)
library(grid)
# 示例共现矩阵
co_occur_matrix <- matrix(rnorm(100), nrow = 10, 
                          dimnames = list(paste0("Species_", 1:10), paste0("Species_", 1:10)))
# 设置字体大小,支持旋转过长名称
Heatmap(co_occur_matrix, 
        row_names_gp = gpar(fontsize = 8), 
        column_names_gp = gpar(fontsize = 8),
        column_names_rot = 45)  # 列名称旋转45度避免重叠

3. 使用ggplot2绘制热图

转换矩阵为长格式后,通过theme()修改轴文本大小:

library(ggplot2)
library(reshape2)
# 矩阵转长格式
co_occur_df <- melt(co_occur_matrix)
# 绘图并设置轴文本(物种名)大小
ggplot(co_occur_df, aes(Var2, Var1, fill = value)) +
  geom_tile() +
  theme(axis.text.x = element_text(size = 8, angle = 45, hjust = 1),
        axis.text.y = element_text(size = 8))

内容的提问来源于stack exchange,提问作者li ranran

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.23 23:57:05