Jak konkretnie zamawiasz oś x ggplot2 zamiast kolejności alfabetycznej? [duplikować
To pytanie ma już odpowiedź tutaj:
Zmień kolejność dyskretnej skali x 5 odpowiedzi Próbuję zrobićheatmap
za pomocąggplot2
używającgeom_tiles
funkcja tutaj jest mój kod poniżej:
p<-ggplot(data,aes(Treatment,organisms))+geom_tile(aes(fill=S))+
scale_fill_gradient(low = "black",high = "red") +
scale_x_discrete(expand = c(0, 0)) +
scale_y_discrete(expand = c(0, 0)) +
theme(legend.position = "right",
axis.ticks = element_blank(),
axis.text.x = element_text(size = base_size, angle = 90, hjust = 0, colour = "black"),
axis.text.y = element_text(size = base_size, hjust = 1, colour = "black")).
data to mój plik data.csv
moja oś X to rodzaje leczenia
moja oś Y to rodzaje organizmów
Nie znam się zbyt dobrze na komendach i programowaniu i jestem stosunkowo nowy. Chcę tylko móc określić kolejność etykiet na osi x. W takim przypadku próbuję określić kolejność „Leczenia”. Domyślnie porządkuje alfabetycznie. Jak mogę to zastąpić / zachować dane w tej samej kolejności, co w moim oryginalnym pliku csv?
Próbowałem tego polecenia
scale_x_discrete(limits=c("Y","X","Z"))
gdzie x, y i z są moją kolejnością warunków leczenia. Jednak to nie działa bardzo dobrze i daje mi brakujące pola grzewcze.