2016-12-13 11 views
0

Meine Daten sehen so aus. Ich benutzte Schmelze Funktion wie dieseSo ordnen Sie die Boxplots in r

   Legend  variable value 
1    Grassland   NDVI 0.139 
2    Grassland   NDVI 0.285 
3    Grassland   NDVI 0.134 
4    Grassland   NDVI 0.243 
5    Grassland   NDVI 0.113 
6    Grassland   NDVI 0.144 
7    Grassland   NDVI 0.212 
8    Grassland   NDVI 0.249 
9    Grassland   NDVI 0.231 
10   Grassland   NDVI 0.192 
11   Grassland   NDVI 0.159 
12   Grassland   NDVI 0.146 
13   Grassland   NDVI 0.177 
14   Grassland   NDVI 0.287 
15   Grassland   NDVI 0.240 
16   Grassland   NDVI 0.285 

Es Daten zu ordnen sind vier Legenden * (Grünland, Shrubby Patches, Nicht vegetative Bereich und Waldfläche und fünf Variablen in jeder Legende dh Kategorien *. Ich meine ggplot als my ggplot bekam

ich mag nicht die Art und Weise Legenden in jeder variablen geordnet. Wie kann ich die Reihenfolge ändern? würde ich mag auf den ersten Nicht-vegetative Bereich haben, dann Grünland, shrubby pathches und zuletzt das Waldgebiet.

+3

Sie müssen die Gruppen um ähnliche toL Daten $ names = Faktor ($ data Namen, levels = Ebenen neu zu ordnen (Daten $ Namen) [c (1,4,3,2)]) – sb0709

Antwort

1

Sie können factor verwenden, indem Sie explizit die Reihenfolge des Arguments levels festlegen.

Als Baseline:

library(ggplot2) 
ggplot(iris, aes(Species, Sepal.Length)) + geom_boxplot() 

<code>iris$Species</code>, default order

df <- iris 
levels(df$Species) 
# [1] "setosa"  "versicolor" "virginica" 
df$Species <- factor(df$Species, levels = levels(df$Species)[c(3,1,2)]) 
ggplot(df, aes(Species, Sepal.Length)) + geom_boxplot() 

<code>iris$Species</code>, reordered

+1

@Besow, hilft dir das überhaupt? – r2evans

Verwandte Themen