2013-03-29 12 views
9

Supponiamo che io sto tracciando un dataframe in ggplot2 come:rimuovere determinate variabili di legenda e valori di legenda da ggplot2?

ggplot(iris) + geom_point(aes(x=Sepal.Width, y=Sepal.Length, color=Species, size=Sepal.Length)) 

due questioni correlate:

  1. come posso rimuovere una variabile del tutto dalla leggenda? Ad esempio, ridimensiona ancora i punti per Sepal.Length ma rimuovi del tutto Sepal.Length dalla legenda?

  2. come è possibile rimuovere solo un determinato valore o un insieme di valori dalla legenda? Ad esempio, continua a colorare i punti per Specie come sopra, ma nella legenda mostra solo il valore per setosa ed escludi versicolor, virginica?

grazie.

+4

una risposta alla tua prima domanda sarebbe 'scale_size (guida = "none")'. Per quanto riguarda il secondo, non conosco un modo semplice per farlo fuori di testa. – joran

risposta

13
  1. Come commentato da joran, utilizzare scale_size(guide = "none").

  2. scale_color_discrete(breaks="setosa")

+0

Non capisco perché questa risposta funzioni per questa domanda. Potresti spiegare come un utente può sapere quale 'scale_'-function da' ggplot2' usare? E hai una fonte che è utile a questo riguardo? La tua risposta all'uso di 'scale_color_discrete' funziona in questo caso specifico per rimuovere le variabili della legenda, ma in alcune altre no. – Leo

+1

@Leo Dopo il primo trattino è possibile inserire tutto ciò che ha dati mappati su di esso (x, y, colore, dimensioni in questo esempio). Dopo il secondo trattino è possibile inserire un valore continuo (per variabili continue) o discreto (per variabili fattore). – Roland

Problemi correlati