Search code examples
rggbiplot

ggbiplot - how not to use the feature vectors in the plot


I have a dataset data$cell_line.sva, which has dim of 313 11875.

cc.pca <- prcomp(data$cell_line.sva, center = TRUE, scale. = TRUE, retx = TRUE) 
g <- ggbiplot(cc.pca, obs.scale = 1, var.scale = 1, groups = as.factor(cgpResponse), ellipse = TRUE, circle = FALSE)

enter image description here

How can I get rid of the feature names? (the red text)


Solution

  • I cannot quite figure out how this would yield a useful result, but here goes anyway. The names are not something that the function lets you suppress via parameter settings, at least to my reading of the code and help page. So looking at the code it looks as though the labels for the factors are pulled from the $rotations element of the prcomp object. Trying to set those names all to a blank character created an error so I succeeded by setting to the a value of varying lengths of blanks.

    data(wine)    # need a reproducible example so use the help page 
     wine.pca <- prcomp(wine, scale. = TRUE)
    print(ggbiplot(wine.pca, obs.scale = 1, var.scale = 1, groups = wine.class, ellipse = TRUE, circle = TRUE))
    # that was the equivalent of your plot
    # Now change the input value
    
    dimnames(wine.pca$rotation)[[1]] <- 
       Reduce(function(x,y) paste0(x,y),    # function to concatentate the lanks
              rep(" ",dim(wine.pca$rotation)[1]),   # corrrect number of blanks
               acc=TRUE)                    # save all intermediate strings
     print(ggbiplot(wine.pca, obs.scale = 1, var.scale = 1, groups = wine.class, 
            ellipse = TRUE, circle = TRUE))
     #Look, Ma! No labels
    

    enter image description here