【发布时间】:2015-09-04 08:42:05
【问题描述】:
早上好,
我正在 ggplot 中制作特定表型之间相关性的热图。我想用关联的 R^2 标记每个图块。
我有一个相关矩阵 max_all,如下所示:
phenolist2 pheno1 pheno2 pheno3 pheno4 pheno5
max.pheno1 pheno1 0.05475998 0.05055959 0.05056578 0.10330301 0.05026997
max.pheno2 pheno2 0.15743312 0.05036100 0.05151750 0.04880302 0.31008809
max.pheno3 pheno3 0.05458550 0.07672537 0.04043422 0.16845294 0.14268895
max.pheno4 pheno4 0.05484327 0.04391523 0.05151107 0.09521869 0.19776296
max.pheno5 pheno5 0.08658449 0.05183693 0.16292683 0.22369817 0.53630569
否则,我的代码如下:
tmp_Rsq <- melt(max_all)
tmp_Rsq <- ddply(tmp_Rsq, .(variable), transform, rescale=rescale(value))
labels_Rsq <- expression(paste(R^2, " = ", format(tmp_Rsq$value, digits=2), sep=""))
ggplot(tmp, aes(variable, phenolist2)) +
geom_tile(aes(fill =-log10(value)), colour = "white") +
geom_text(aes(label=as.character(labels_Rsq), parse = TRUE, size=4)) +
scale_fill_gradientn(colours = myPalette(101), name="-log10(P)", limits=c(0 , 3.5)) +
theme(axis.title.x = element_blank(), axis.title.y=element_blank(),
plot.title=element_text(size=20))+
theme(axis.text = element_text(colour="black", face="bold"))
我的问题是我无法写出表达式,因此 2 是 R 的上标。 我意识到这个网站上有很多问题解决了类似的问题,例如ggplot2 two-line label with expression、Combining paste() and expression() functions in plot labels 和Adding Regression Line Equation and R2 on graph,但我无法将这些答案中建议的解决方案应用于我的案例(可能是因为我一直在尝试使用标签向量)。
非常感谢您的帮助。
【问题讨论】:
标签: r ggplot2 expression superscript