値のあるヒートマップ(ggplot2)
Heatmap With Values
解決:
これは、tidyverseの原則に準拠し、ggplot2の不適切な使用を改善するように更新されました
SlowLeranerのコメントによると、私はこれを簡単に行うことができました。
library(tidyverse)##データデータを作成する<- matrix(rnorm(100, 3, 1), ncol=10) ## reshape data (tidy/tall form) dat2 % tbl_df() %>%rownames_to_column( 'Var1')%>%gather(Var2、value、-Var1)%>%mutate(Var1 = factor(Var1、levels = 1:10)、Var2 = factor(gsub( 'V'、 ''、 Var2)、levels = 1:10))##プロットデータggplot(dat2、aes(Var1、Var2))+ geom_tile(aes(fill = value))+ geom_text(aes(label = round(value、1))) + scale_fill_gradient(low = '白'、high = '赤')
値を使用してヒートマップを作成する別の簡単な方法があります。これを行うには、pheatmapを使用できます。
どれの<- matrix(rnorm(100, 3, 1), ncol=10) names(dat) <- paste('X', 1:10) install.packages('pheatmap') # if not installed already library(pheatmap) pheatmap(dat, display_numbers = T) これはあなたにこのようなプロットを与えるでしょう
クラスタリングを削除して配色を使用したい場合は、次のことができます。
pheatmap(dat、display_numbers = T、color = colorRampPalette(c( 'white'、 'red'))(100)、cluster_rows = F、cluster_cols = F、fontsize_number = 15)
表示される数字のフォントサイズ、形式、色を変更することもできます。