簡體   English   中英

R 中的多面熱圖 plot

[英]Faceted heatmap plot in R

我想在 R 中構建一個多面熱圖 plot。 我為此附上了我的示例代碼。 一切正常,但我面臨的唯一問題是我不希望這些位置按字母順序排列。 請看一下代碼和圖。 我需要位置序列是purulia,bankura,jhargram而不是bankura,jhargram,purulia

 df <- data.frame(chr=c("SWAT","SWAT","VIC","VIC","MOD16A2","MOD16A2"),
                 year=c("2001_K","2002_K","2001_K","2002_K","2001_K","2002_K"),                 
                 purulia=c(-12,0.56,-0.35,0.49,0.11,0.23),
                 bankura=c(-43,-0.56,0.35,0.74,-0.11,0.89),
                 jhargram=c(0.13,-0.12,-0.41,0.16,-0.69,0.42))
df.l <- reshape(df, [enter image description here][1]
                varying = c("purulia", "bankura", "jhargram"),
                idvar="chr",
                v.names = "NSE",
                timevar = "Locations",
                times=c("purulia", "bankura", "jhargram"),
                new.row.names=c(1:(3*nrow(df))),
                direction = "long")
library(ggplot2)
df.l$year <- factor(df.l$year)
ggplot(df.l, aes(Locations, year)) + geom_tile(aes(fill = NSE)) + 
  scale_fill_gradient(low = "white", high = "red") + facet_wrap(~chr)+ 
  theme(panel.grid.major = element_blank(), panel.grid.minor = element_blank())

使用例如按所需順序設置因子的水平

df.l$Locations <- factor(df.l$Locations, levels = c("purulia", "bankura", "jhargram"))

暫無
暫無

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

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