Привет для моей работы, я создаю тепловую карту ggplot2.
вот данные
structure(list(label = structure(c(4L, 5L, 7L, 2L, 3L, 6L, 8L,
1L, 4L, 5L, 7L, 2L, 3L, 6L, 8L, 1L, 4L, 5L, 7L, 2L, 3L, 6L, 8L,
1L), .Label = c("SP1", "SP2", "SP3", "SP4", "SP5", "SP6", "SP7",
"SP8"), class = "factor"), Categories = structure(c(1L, 1L, 1L,
1L, 1L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 3L, 3L, 3L,
3L, 3L, 3L, 3L, 3L), .Label = c("VAR1", "VAR2", "VAR3"), class = "factor"),
Value = structure(c(1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 2L, 3L,
3L, 3L, 3L, 2L, 1L, 1L, 2L, 3L, 3L, 3L, 3L, 3L, 1L, 1L), .Label = c("<NA>",
"A", "B"), class = "factor")), class = "data.frame", row.names = c(NA,
-24L))
как вы можете видеть, есть определенный c порядок меток:
1 - SP4
2 - SP5
3 - SP7
...
7 - SP8
8 - SP1
вот df:
> table
label Categories Value
1 SP4 VAR1 <NA>
2 SP5 VAR1 <NA>
3 SP7 VAR1 <NA>
4 SP2 VAR1 <NA>
5 SP3 VAR1 <NA>
6 SP6 VAR1 <NA>
7 SP8 VAR1 <NA>
8 SP1 VAR1 <NA>
9 SP4 VAR2 A
10 SP5 VAR2 B
11 SP7 VAR2 B
12 SP2 VAR2 B
13 SP3 VAR2 B
14 SP6 VAR2 A
15 SP8 VAR2 <NA>
16 SP1 VAR2 <NA>
17 SP4 VAR3 A
18 SP5 VAR3 B
19 SP7 VAR3 B
20 SP2 VAR3 B
21 SP3 VAR3 B
22 SP6 VAR3 B
23 SP8 VAR3 <NA>
24 SP1 VAR3 <NA>
поэтому я ожидаю увидеть то же row order
, если я сделаю тепловую карту с ggplot, но вместо этого я получаю такой порядок:
Я использовал код:
ggplot(mod_mat_gen_env, aes(x=Categories, y=label))+
geom_tile(aes(fill=Value))