Tracciare con colors condizionali in base ai valori in R

Voglio tracciare un grafico con colors diversi in base ai valori. Ho scritto il codice seguente,

np_graph <- data.frame(C1 = -5:5, C2 = -5:5) x=np_graph2$C1 y=np_graph2$C2 plot(x,y,xlab="PC1",ylab="PC2") 

Ora, se il valore di X è> 0, allora quel valore dovrebbe essere in verde (nel grafico). se il valore di Y è> 0, allora quel valore dovrebbe essere in rosso (nel grafico).

Qualcuno può aiutarmi in questo?

L’argomento col imposterà i colors, potresti usarlo insieme a un’istruzione ifelse . Vedi ?plot per maggiori dettagli.

 # using base plot plot(x,y,xlab="PC1",ylab="PC2", col = ifelse(x < 0,'red','green'), pch = 19 ) 

inserisci la descrizione dell'immagine qui

Per fare la stessa cosa in ggplot2 .

 #using ggplot2 library(ggplot2) ggplot(np_graph) + geom_point(aes(x = C1, y = C2, colour = C1 >0)) + scale_colour_manual(name = 'PC1 > 0', values = setNames(c('red','green'),c(T, F))) + xlab('PC1') + ylab('PC2') 

inserisci la descrizione dell'immagine qui