r - ggplot geom point, modify text -


i trying perform pca analysis using r stat module prcomp , ggplot2, sample data looks below. each car model there data in 3 columns far able generate plot using code given below.

df:

> head(car.df)    honda_1_smp honda_2_smp honda_3_smp audi_1_smp audi_2_smp audi_3_smp merc_1_smp merc_2_smp s1    0.000289    0.000000    0.076095   0.056965   0.030314   0.000000   0.000000   0.028548 s2    1.588724    1.678821    0.795915   0.552910   0.503845   0.248782   0.201806   2.324172 s3    0.067802    0.068452    0.082904   0.014259   0.038896   0.044144   0.003634   0.167235 s4    0.000000    0.000000    0.000000   0.000000   0.000000   0.008724   0.000000   0.000000 s5    0.822612    1.137569    0.008302   0.025600   0.000000   0.000000   0.000000   0.000000 s6    0.025091    0.096847    0.000000   0.031416   0.024999   0.000000   0.012987   0.000000 

code:

carpca = prcomp(t(car.df), center=t) summary(carpca) car12 = data.frame(pc1=carpca$x[,1], pc2= carpca$x[,2], type=rownames(carpca$x)) ggplot(car12, aes(x=pc1 , y=pc2 , col=type)) +   geom_point() + geom_text(aes(label = type), hjust=0, vjust=0) +   xlab("pc1 89%") + ylab("pc2 77%") + ggtitle("car") 

plotenter image description here

question

how group replicate headers 1 color , shape in plot , legend. meaning : each honda have same color , shape audi , merc.

i use regex (gsub) rid of replicate id "type" attribute.

car12 = data.frame(pc1=carpca$x[,1], pc2= carpca$x[,2], type=gsub("_.*$", "", rownames(carpca$x))) ggplot(car12, aes(x=pc1 , y=pc2 , col=type)) +   geom_point() + geom_text(aes(label = type), hjust=0, vjust=0) +   xlab("pc1 89%") + ylab("pc2 77%") + ggtitle("car") 

enter image description here


Comments

Popular posts from this blog

android - InAppBilling registering BroadcastReceiver in AndroidManifest -

python Tkinter Capturing keyboard events save as one single string -

sql server - Why does Linq-to-SQL add unnecessary COUNT()? -