График многогранной тепловой карты в R - PullRequest
1 голос
/ 10 апреля 2020

Я хочу построить многогранный график тепловых карт в R. Я приложил для этого свой пример кода. Все работает нормально, но единственная проблема, с которой я сталкиваюсь, заключается в том, что я не хочу, чтобы местоположения были расположены в алфавитном порядке c. Пожалуйста, посмотрите на код и рисунок. Мне нужно, чтобы последовательность местоположения была 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())

1 Ответ

0 голосов
/ 10 апреля 2020

Установите уровни коэффициента в требуемом порядке, используя, например,

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