2015-05-06 13 views
5

Ho un grafico in R che ha un numero molto elevato di gruppi di campioni, pertanto la legenda è più grande della dimensione della pagina e viene tagliata. Capisco che questa non è una qualità di pubblicazione, ma ho bisogno di conoscere i colori per poter fare la leggenda in Illustrator.L'elenco delle legende ggplot è più grande della pagina

C'è un modo per aumentare le dimensioni della pagina o in qualche modo modificare il formato della legenda in modo che sia possibile includere tutte le chiavi? Il motivo è che posso aprire il PDF in Illustrator e ottenere i colori per ogni campione per creare una nuova legenda che sarà pubblicata. Ho pensato che forse c'è una maschera di ritaglio e che la legenda effettiva verrà conservata, ma quando ho aperto in Illustrator, la legenda è stata effettivamente tagliata alla fine della pagina1.

Here is one exmple where the legend goes beyond the graph and the page size and is therefore cut off.

come suggerito nei commenti qui sotto ho dato nrow una prova che ha contribuito a rompere le leggende su ma ora l'intera pagina è solo leggende.

ggplot(purine.n, aes(x=variable, y=value, colour=metabolite_gene, shape=variable)) 
+geom_abline(slope=0) 
+geom_point(size=4, position=position_dodge(width=0.08)) 
+scale_y_continuous(limit=c(-3.5,5.5), breaks=c(-3,-2,-1,0,1,2,3,4,5)) 
+scale_shape_manual(values=c(16,17,17), guide=F) 
+theme_bw() 
+theme(legend.key=element_blank(), legend.key.size=unit(1,"point")) 
+guides(colour=guide_legend(nrow=16)) 
+1

Does utilizzando il [ 'nrow o ncol'] (http://docs.ggplot2.org/0.9.3.1/guide_legend.html) aiuto argomento? (imo (fwow) avere questo molti fattori/colori non produrrà una trama/legenda molto informativa) – user20650

+0

Hai bisogno di avere un colore diverso per ogni categoria? A meno che le categorie siano ordinali, questo potrebbe essere molto difficile da leggere in modo efficace per qualcuno. Potresti voler scoprire un modo diverso di differenziare le categorie. –

+0

Grazie, questo ha portato a questo http://stackoverflow.com/questions/25621920/guide-legend-and-ggplot2-format-nrow ma sfortunatamente non ha risolto il problema. Penso che quello che hai indicato sia la traccia giusta! Ho aggiornato la domanda per riflettere i tuoi suggerimenti. – pandoraEudora

risposta

7

come suggerito nei commenti, nrow era la risposta al mio problema. Ho dovuto regolare il valore per ottenere il giusto numero di righe per adattarlo alla mia leggenda. Di seguito è riportato il codice completato che ha funzionato. Ci sono altre modifiche che devo fare, come cambiare le dimensioni della pagina per contribuire a migliorare l'aspetto delle cose, ma questo è fuori dallo scopo di questa domanda.

ggplot(data.n, aes(x=variable, y=value, colour=metabolite_gene, shape=variable)) 
+geom_abline(slope=0)+geom_point(size=4, position=position_dodge(width=0.08)) 
+scale_y_continuous(limit=c(-3.5,5.5), breaks=c(-3,-2,-1,0,1,2,3,4,5)) 
+scale_shape_manual(values=c(16,17,17), guide=F) 
+theme_bw() 
+theme(legend.key=element_blank(), legend.key.size=unit(1,"point")) 
+guides(colour=guide_legend(nrow=30)) 

fixed legend with nrow

Problemi correlati