[解決済み] Pheatmap注釈の色と枠線
2022-02-01 01:38:59
質問
シートマップ
library(pheatmap)
取る
annotation_colors
を使って、各ヒートマップカラムの上部にヘッダーIDの色を追加しています。
列のヘッダー色に白を追加し、ボーダーを付けたい。
ボーダーは
border_color
が、この関数はヒートマップ全体にもボーダーを描画します。
以下は、これまで私が行ってきたことです。
library(pheatmap)
set.seed(123)
df<-data.frame( matrix(sample(30), ncol = 5))
colnames(df)<-LETTERS[1:5]
subj<-c("P1", "P2","P3", "T1", "T2","T3")
rownames(df)<-subj
aka2 = data.frame(ID = factor(rep(c("Pat","Trea"), each=3)))
rownames(aka2)<-subj
aka3 = list(ID = c(Pat = "white", Trea="blue"))
pheatmap(t(scale(df)),
annotation_col = aka2,
annotation_colors = aka3[1],
annotation_legend = FALSE,
gaps_col = 3,
show_colnames = T, show_rownames = T, cluster_rows = F,
cluster_cols = F, legend = TRUE,
clustering_distance_rows = "euclidean", border_color = FALSE)
解決方法は?
私は
grid
関数を使用して、該当するgrobを編集します。
library(pheatmap)
set.seed(123)
df<-data.frame( matrix(sample(30), ncol = 5))
colnames(df)<-LETTERS[1:5]
subj<-c("P1", "P2","P3", "T1", "T2","T3")
rownames(df)<-subj
aka2 = data.frame(ID = factor(rep(c("Pat","Trea"), each=3)))
rownames(aka2)<-subj
aka3 = list(ID = c(Pat = "white", Trea="blue"))
pheatmap(t(scale(df)),
annotation_col = aka2,
annotation_colors = aka3[1],
annotation_legend = FALSE,
gaps_col = 3,
show_colnames = T, show_rownames = T, cluster_rows = F,
cluster_cols = F, legend = TRUE,
clustering_distance_rows = "euclidean", border_color = FALSE)
# Edit the relevant grob
library(grid)
grid.ls(grid.force()) # "col_annotation" looks like it's the one to edit
grid.gedit("col_annotation", gp = gpar(col="grey70"))
適用する
grid.gget("col_annotation")$gp
を元のヒートマップに適用すると、以下のようになります。
col_annotation
があります。
gp
スロットに
fill
が設定されているが
col
. 編集後、両方の
fill
と
col
が設定されます。
関連
-
[解決済み】"置換する項目数が置換長の倍数でない "と表示されるのはなぜですか?
-
[解決済み】R:関数に有限な'ylim'値が必要
-
[解決済み】knitrのドキュメントでinstall.packagesが失敗する。"ミラーを設定せずにCRANを使おうとしている"
-
[解決済み】エラー:ベクターメモリの枯渇(制限に達したか) R 3.5.0 macOS
-
[解決済み】library(ggplot2)でエラー:'ggplot2'というパッケージは存在しません。
-
[解決済み】ロジスティック回帰 - eval(family$initialize) : y 値は 0 <= y <= 1 である必要があります。
-
[解決済み】Rでデータフレームのサブセットをプロットする方法は?
-
[解決済み】Rはプロットするが、アブラインを描画しない
-
[解決済み] グループ化関数(tapply、by、aggregate)と*applyファミリ
-
[解決済み] Rの代入演算子"="と"<-"の違いは何ですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】model.frame.defaultでのエラー:変数の長さが異なる
-
[解決済み】エラー。Rの次元数が正しくない
-
[解決済み】ggplotの線幅を変更するには?
-
[解決済み】apply()とadply()の出力が異なる件)
-
[解決済み】Rエラー。"新しい列は既存の列の後に穴を空ける"
-
[解決済み】R ggplot2 で scale_x_discrete を使用する。
-
[解決済み】 boxplotに色を追加する - "離散的なスケールに連続的な値が供給される "エラー
-
[解決済み】長いオブジェクトの長さは、短いオブジェクトの長さの倍数ではない?[重複]。
-
[解決済み】二項演算子への非数値引数【非公開
-
[解決済み】起動時にパーをデフォルト値にリセットする方法