Voglio creare un array di trame 2x4 che mostri che le distribuzioni cambiano nel tempo. L'accordo ggplot
predefinito con facet_wrap
è che la riga superiore ha serie 1 & 2, la seconda riga ha serie 3 & 4, ecc. Vorrei cambiare questo in modo che la prima colonna abbia serie in ordine (1-> 2-> 3-> 4) e poi la seconda colonna ha le successive 4 serie. In questo modo l'occhio può confrontare immediatamente distribuzioni adiacenti nel tempo in verticale (come penso che dovrebbero essere).Come modificare l'ordine principale da riga a colonna con facet_wrap?
risposta
Sembra che avete bisogno di fare questo con il fattore di ordinamento prima della chiamata facet_wrap:
fac <- factor(fac, levels=as.character(c(1, 10, 2, 20, 3, 30, 4, 40)))
Il valore di default a/tavola in facet_wrap
è VERO che sta andando a mettere il valore più basso ("1 "in questo caso) in alto a sinistra e il valore più alto (" 40 "nell'esempio sopra) nell'angolo in basso a destra. Quindi:
pl + facet_wrap(~fac, ncol=2, nrow=4)
I tuoi commenti suggeriscono che stai lavorando con variabili numeriche di classe. (I tuoi commenti non forniscono ancora un esempio funzionante e sembra che tu pensi che questa sia la nostra responsabilità e non la tua. Dove si acquisiscono tali nozioni di diritto?) Questo dovrebbe creare un fattore che potrebbe essere "colonna maggiore" ordinato con numerico di ingresso fattore:
> ss <- 1:8; factor(ss, levels=ss[matrix(ss, ncol=2, byrow=TRUE)])
[1] 1 2 3 4 5 6 7 8
Levels: 1 3 5 7 2 4 6 8
D'altra parte mi viene in mente situazioni in cui questo potrebbe essere l'approccio efficace:
> ss <- 1:8; factor(ss, levels=ss[matrix(ss, nrow=2, byrow=TRUE)])
[1] 1 2 3 4 5 6 7 8
Levels: 1 5 2 6 3 7 4 8
Sfortunatamente, penso che questo sia l'unico modo per farlo. Semplicemente non mi piace, perché non è molto elegante. Oh bene. Non posso vincerli tutti. Grazie. –
Il caso di lavoro deve essere diverso, poiché l'ordine predefinito dell'esempio che ho offerto è lo stesso che ho creato. Le migliori risposte sono sempre ottenute dalla maggior quantità di informazioni nella domanda. –
Tutte le informazioni necessarie che ho dato. facet_wrap (~ time) dove time = 1,2,3,4 ... Questo verrà tracciato prima sulle righe e quindi sulle colonne per impostazione predefinita. Stai dicendo che ottieni qualcosa di diverso da quello in cui traccia prima le colonne e poi le righe? –
utilizzare il parametro direzione dir
-facet_wrap()
. Predefinita è orizzontale, e questo può essere commutato in verticale:
# Horizontally
ggplot(mtcars, aes(x=hp, y=mpg)) + geom_point() + facet_wrap(~ cyl, ncol=2)
# Vertically
ggplot(mtcars, aes(x=hp, y=mpg)) + geom_point() + facet_wrap(~ cyl, ncol=2, dir="v")
- 1. facet_wrap riempimento per colonna
- 2. Oracle trasformare tavolo da riga a colonna
- 3. Come modificare il formato di un singolo pannello facet_wrap?
- 4. come aggiungere una famiglia da colonna a colonna in hbase
- 5. aggiungendo grafici vuoti a facet_wrap in ggplot2
- 6. come avere le etichette dell'asse x nel ggplot a più colori con facet_wrap?
- 7. Come modificare una riga nel datatable
- 8. Mappe con facet_wrap in ggplot2
- 9. Come passare dalla notazione Riga, Colonna a Excel A1?
- 10. Come modificare una colonna e modificare il valore predefinito?
- 11. MySQL - Selezionare la riga con la colonna + X> Colonna
- 12. come modificare una colonna Dataframe da String type a Double type in pyspark
- 13. pandi: valori impostati con (riga, colonna) indici
- 14. Come modificare SRID della colonna della geometria?
- 15. Come posso costruire una lista selectInput lunga e quindi utilizzarlo per modificare le etichette in facet_wrap
- 16. R/ggplot: testo striscia verticale con facet_wrap
- 17. Come modificare il tipo di colonna da String a Date in DataFrames?
- 18. Come copiare il valore della colonna di testo da una riga a un'altra in mySQL
- 19. come modificare la colonna su laravel?
- 20. Come modificare la definizione della colonna MySQL?
- 21. Segmenta facet_wrap in PDF multipagina
- 22. Spingendo colonna alla riga successiva con *
- 23. Come modificare una connessione a Github da SSH a HTTPS?
- 24. Come modificare il colore di sfondo per la colonna del numero di riga in eclissi?
- 25. Come modificare ogni colonna nvarchar in varchar?
- 26. Come posso modificare una colonna ID int a Guid con migrazione EF?
- 27. Electron: invia buffer da principale a renderer
- 28. Come aggiungere espressioni alle etichette in facet_wrap?
- 29. Come modificare il contenuto fittizio nell'attività principale/dettaglio Android?
- 30. Come eseguire la trasposizione da riga a colonna dei dati nella tabella csv?
cambiare i livelli di incarto factor..see [questo] (http://stackoverflow.com/questions/5490638/how-to-change-the -order-of-facet-labels-in-ggplot-custom-facet-wrap-labels) – agstudy
Mi rendo conto che posso farlo, ma quando i livelli sono solo punti temporali, è un po 'scialbo, non credi? I livelli sarebbero qualcosa di simile (1,10,2,20,3,30,4,40, ...) e così via. –
Non capisco il tuo punto qui. puoi fornire un esempio riproducibile per favore. – agstudy