quindi ho un carico di dati che ho provato come esempio di seguito:stack ordinazione di formato in una ggplot2 impilato grafico a barre
Sequence Abundance Length
CAGTG 3 25
CGCTG 82 23
GGGAC 4 25
CTATC 16 23
CTTGA 14 25
CAAGG 9 24
GTAAT 5 24
ACGAA 32 22
TCGGA 10 22
TAGGC 30 21
TGCCG 25 21
TCCGG 2 21
CGCCT 22 24
TTGGC 4 22
ATTCC 4 23
sto mostrando solo le prime 4 parole di ogni sequenza qui, ma in realtà sono lunghi "Lunghezza". Sto osservando l'abbondanza di sequenze per ogni classe di dimensioni che ho qui. Inoltre, voglio visualizzare la proporzione di abbondanza che una particolare sequenza rappresenta all'interno della sua classe di dimensioni. Attualmente, posso fare un grafico a barre in pila in questo modo:
ggplot(tab, aes(x=Length, y=Abundance, fill=Sequence))
+ geom_bar(stat='identity')
+ opts(legend.position="none")
Questo va bene per un piccolo set di dati di questo tipo, ma ho circa 1,7 milioni di righe nel mio set di dati reali. Sembra molto colorato e posso vedere che sequenze particolari hanno un'abbondanza di maggioranza in una classe di dimensioni, ma è molto caotico.
Vorrei poter ordinare le barre colorate impilate per ogni dimensione con l'abbondanza di quella sequenza. cioè le barre con la più alta abbondanza all'interno del loro stack sono in fondo a ogni pila e le barre con l'abbondanza più bassa sono in cima. Dovrebbe sembrare molto più presentabile in questo modo.
Qualche idea su come farlo in ggplot2? So che esiste un parametro "order" in aes() ma non riesco a capire cosa dovrebbe fare con i dati nel formato che ho.
@ GSK3 - credo che il PO sta chiedendo qualcosa di leggermente diverso qui. Invece di voler ordinare le barre per la loro altezza totale, penso che kukimbob stia chiedendo come ordinare i blocchi colorati * entro * ogni barra, mettendo il più grande in basso, in basso per l'asse x e il più piccolo in alto. (cioè l'ordinamento dei colori all'interno di ciascuna barra può ben differire tra le barre). –
@ JoshO'Brien Proprio così! L'ordinamento sull'asse x va bene: dalla lunghezza più piccola alla più lunga. Voglio solo essere in grado di manipolare l'ordine delle pile colorate all'interno di ciascuna barra. – MattLBeck
Ah, questa è sicuramente una domanda diversa. Scuse. –