可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试):
问题:
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)
How can I get rid of the feature names? (the red text)
回答1:
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
回答2:
I can't just comment because I don't have the necessary reputation points yet, but removing the arrows and the names works quite easily by setting var.axes
to false:
ggbiplot(wine.pca, obs.scale = 1, var.scale = 1,
groups = wine.class, ellipse = TRUE,
circle = TRUE, var.axes=FALSE)
回答3:
You need to use the varname.size argument to do that.
Using the example from the documentation:
data(wine)
wine.pca <- prcomp(wine, scale. = TRUE)
print(ggbiplot(wine.pca, obs.scale = 1, var.scale = 1,
groups = wine.class, ellipse = TRUE, circle = TRUE))
and then add the varname.size argument:
print(ggbiplot(wine.pca, obs.scale = 1, var.scale = 1,
groups = wine.class, ellipse = TRUE, circle = TRUE,
varname.size=0)) #set it to zero
And you have what you want!
回答4:
Ok, so I do this in a very brute way that does the job.
print(ggbiplot(wine.pca, obs.scale = 1, var.scale = 1,
groups = wine.class, ellipse = TRUE, circle = TRUE,
varname.size=0, varname.adjust = 20))
It simply sets the offset for variable names beyond the plot limits.