簡體   English   中英

一次多張熱圖

[英]Multiple heatmaps at once

我正在嘗試使用 facet_wrap 和 geom_tile 函數獲取多個熱圖,我有 1000 個樣本。

我的目標是為每個 Parent_Gene 獲取熱圖,其中包括“X”軸中的“條件”、“響應值”作為“填充”以及屬於“Y”軸中相同 Parent_Gene 的基因。

ID sl (健康)狀況 基因 響應值 Parent_Gene
1 S1 疾病1 基因KPN1 2.749526 基因KPN
2 S2 疾病2 基因KPN2 6.606618 基因KPN
3 S3 疾病1 基因BKJH1 4.697644 基因BKJH

到目前為止,這是我的腳本。 我的問題是,我只希望每個熱圖中都描述屬於相應 parent_gene 的基因,而不是每次都顯示所有基因。

my_data <- read.csv("my_data.csv")

my_data$Parent_Gene <- gsub("([A-Z)]+)\\d+.*","\\1", my_data $Gene)

library(tidyverse)

 gg<- ggplot(my_data, aes(x=Condition, y=Gene, fill= Response_Value))+
  geom_tile(color="white", size=0.1)+
 scale_fill_viridis(name="response levels")

 gg + coord_equal()

gg + facet_wrap(~Parent_Gene, ncol=2)

gg <- gg + labs(x=NULL, y=NULL, title="Comparative response levels")

您需要將scales = "free"添加到您的facet_wrap()中。 這將“釋放”規模,在您的情況下,這將只在您的情節中留下包含的基因。 您還可以指定釋放單個比例,例如使用free_xfree_y ,如果您想在 x 軸上有不同的基因,但保留 y 軸的比例,這可能很有用。

這些在幫助頁面中也有詳細說明,您可以使用?facet_wrap訪問該頁面。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM