R 使用PCA按类别着色的标签/点
我使用R 使用PCA按类别着色的标签/点,r,plot,R,Plot,我使用prcomp在R中进行PCA分析,我想用不同颜色的文本标签为两个类别中的每一个绘制PC1与PC2, 我通过以下方式进行绘图: plot(pca$x, main = "PC1 Vs PC2", xlim=c(-120,+120), ylim = c(-70,50)) 然后用我尝试过的不同颜色绘制所有文本: text(pca$x[,1][1:18], pca$[,1][1:18], labels=rownames(cava), col="green", adj=c(0.3,-
prcomp
在R中进行PCA分析,我想用不同颜色的文本标签为两个类别中的每一个绘制PC1与PC2,
我通过以下方式进行绘图:
plot(pca$x, main = "PC1 Vs PC2", xlim=c(-120,+120), ylim = c(-70,50))
然后用我尝试过的不同颜色绘制所有文本:
text(pca$x[,1][1:18], pca$[,1][1:18], labels=rownames(cava), col="green",
adj=c(0.3,-0.5))
text(pca$x[,1][19:35], pca$[,1][19:35], labels=rownames(cava), col="red",
adj=c(0.3,-0.5))
但是,如果要在彼此上绘制两个数字而不是一个,pcs$x[,1][1:18]将绘制我知道的正确点,因为如果我使用该绘制点,它将工作并生成与绘图相同的绘图(pca$x
)
如果有人能帮助绘制这两个类别或类别的标签,那就太好了
即使绘制不同颜色的点,也可以轻松区分不同的打印。您需要以稍微不同的方式指定x和y坐标:
text(pca$x[1:18,1], pca$x[1:18,2] ...)
这意味着取x坐标的前18行和第一列(即PC1),以此类推。
我很惊讶你所做的没有出错
如果希望点本身着色,可以通过以下方式进行:
plot(pca$x, main = "PC1 Vs PC2", col = c(rep("green", 18), rep("red", 18)))
很酷,谢谢点颜色法,我会用的。我编写子脚本的方式(R2.15.2)现在我注意到它们正在相互绘制,因为点是相同的。谢谢