How can I add the sample ID (row number) as labels to each point in this LDA plot using ggplot2?
Thanks
Script:
require(MASS)
require(ggplot2)
data(iris)
irisLda <- lda(iris[,-5],iris[,5])
irisLda <- lda(Species~.,data=iris)
plot(irisLda)
irisProjection <- cbind(scale(as.matrix(iris[,-5]),scale=FALSE) %*% irisLda$scaling,iris[,5,drop=FALSE])
p <- ggplot(data=irisProjection,aes(x=LD1,y=LD2,col=Species))
p + geom_point()
You simply need to use
geom_text
:Maybe you need to play around a bit with
hjust
andvjust
, which are part ofgeom_text
. You also might want to have a look at thedirectlabels
package for smart label placement.