Ich habe eine Frage bezüglich der Reihenfolge der Daten in meiner geom_bar.ggplot2 geom_bar ... wie man die Reihenfolge der Daten hält.frame
Das ist mein Daten-Set:
SM_P,Spotted melanosis on palm,16.2
DM_P,Diffuse melanosis on palm,78.6
SM_T,Spotted melanosis on trunk,57.3
DM_T,Diffuse melanosis on trunk,20.6
LEU_M,Leuco melanosis,17
WB_M,Whole body melanosis,8.4
SK_P,Spotted keratosis on palm,35.4
DK_P,Diffuse keratosis on palm,23.5
SK_S,Spotted keratosis on sole,66
DK_S,Diffuse keratosis on sole,52.8
CH_BRON,Dorsal keratosis,39
LIV_EN,Chronic bronchities,6
DOR,Liver enlargement,2.4
CARCI,Carcinoma,1
ich folgende COLNAMES zuweisen:
colnames(df) <- c("abbr", "derma", "prevalence") # Assign row and column names
Dann habe ich Grundstück:
ggplot(data=df, aes(x=derma, y=prevalence)) + geom_bar(stat="identity") + coord_flip()
Warum ggplot2 rand Ändern Sie einfach die Reihenfolge meiner Daten. Ich möchte die Reihenfolge meiner Daten in Übereinstimmung mit meinem data.frame haben.
Jede Hilfe wird sehr geschätzt!
Es ist nicht zufällig, es ist alphabetisch. Sehen Sie hier für die Lösung http://stackoverflow.com/questions/3253641/change-the-order-of-a-discrete-x-scale – arvi1000
Zunächst einmal vielen Dank für Ihre Antwort. Wenn ich anwenden 'derma_table <- Tabelle (df $ Derma) derma_levels <- Namen (derma_table) [bestellen (df $ Prävalenz)] df $ derma2 <- Faktor (df $ Derma, level = derma_levels)' und dann plot 'ggplot (Daten = df, aes (x = derma, y = Prävalenz)) + geom_bar (stat =" Identität ") + coord_flip()' plotten genau das gleiche wie in meiner Frage. Tatsächlich ändern die Befehle nur den data.frame in alphabetischer Reihenfolge, was genau das ist, was ich vermeiden möchte. – Jonas
Sie nivellieren den 'derma2'-Faktor, aber dann verwenden Sie' x = derma' – arvi1000