Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

ggbiplot - change the group color and marker

Tags:

r

pca

ggbiplot

In the example ggbiplot script plot there are 3 groups, how can I change the marker colors and shapes?

library(ggbiplot)
data(wine)
wine.pca <- prcomp(wine, scale. = TRUE)
ggbiplot(wine.pca, obs.scale = 1, var.scale = 1, group=wine.class,
         varname.size = 3, labels.size=3, 
         ellipse = TRUE, circle = TRUE) +
  scale_color_discrete(name = '') +  
  geom_point(aes(colour=wine.class), size = 3) +
  theme(legend.direction ='horizontal', 
        legend.position = 'top')
like image 356
lroca Avatar asked Oct 27 '16 14:10

lroca


1 Answers

The following works for me.

ggbiplot(wine.pca, obs.scale = 1, var.scale = 1, group=wine.class,
     varname.size = 3, labels.size=3, ellipse = TRUE, circle = TRUE) +
scale_color_manual(name="Variety", values=c("orange", "purple", "green")) +  
scale_shape_manual(name="Variety", values=c(17:19)) +
geom_point(aes(colour=wine.class, shape=wine.class), size = 3) +
theme(legend.direction ="horizontal", 
      legend.position = "top")

enter image description here

For the legend, the trick seems to be to use the same name for scale_color_manual and scale_shape_manual.

like image 190
Joe Avatar answered Sep 22 '22 22:09

Joe