R 向散点图矩阵添加点
我想在散点图矩阵中添加点R 向散点图矩阵添加点,r,plot,R,Plot,我想在散点图矩阵中添加点 head(pca) pc1 pc2 pc3 pc4 [1,] 0.72859559 -2.2864943 -0.5408501 0.1564730 [2,] 0.34852943 0.3100891 0.6007349 -0.5985266 [3,] -0.04605026 0.5067896 -0.2911211 -1.1617171 [4,] -1.88358617 1.
head(pca)
pc1 pc2 pc3 pc4
[1,] 0.72859559 -2.2864943 -0.5408501 0.1564730
[2,] 0.34852943 0.3100891 0.6007349 -0.5985266
[3,] -0.04605026 0.5067896 -0.2911211 -1.1617171
[4,] -1.88358617 1.3739440 -0.5655383 0.9518367
[5,] 0.35528650 -1.7482304 -0.3871520 -0.7837712
我对PCA数据运行了kmeans,我可以使用以下方法绘制散点图矩阵:
k <- kmeans(pca,3)
plot(pca, col=k$clust, pch=16)
但它不起作用。如果我只减少到2件,则以下绘制了中心,但仅限于2件:
plot(pca[,c(1,2)], col=k$clust, pch=16) + points(k$centers, col=1:10 ,pch="X", cex=3)
侧注:当我输入R上面的代码时,返回数值0。这是什么意思
> plot(pca[,c(1,2)], col=k$clust, pch=16) + points(k$centers, col=1:10 ,pch="X", cex=3)
> numeric(0)
以下内容在某种程度上有所帮助 我不知道你说的“它不工作”是什么意思。这对我来说很好:
# parameters
rows <- 100
cols <- 4
groups <- 3
# create a matrix of uniforms
pca <- matrix(runif(rows*cols),ncol = cols,byrow=TRUE)
colnames(pca) <- paste0('pc',seq(cols))
# calculate the kmeans
(k <- kmeans(pca,groups))
# plot the data and the means
plot(pca, col=k$clust, pch=15)
points(k$centers, col=seq(groups),pch="X", cex=3)
请注意,只有当矩阵中的列数为2时,才能在二维绘图中获得voronoi细分。您正在尝试添加绘图对象。这适用于ggplot,但不适用于基本图形。numeric0表示数字0,在本例中,这是R告诉您它不理解为什么要添加两个绘图对象的方式。我发现这个答案也很有用。希望有帮助:对。但我想做的是绘制PCA[,c1,2,3],col=k$clust,pch=16点sk$centers,col=1:10,pch=X,cex=3,这不起作用。
# parameters
rows <- 100
cols <- 4
groups <- 3
# create a matrix of uniforms
pca <- matrix(runif(rows*cols),ncol = cols,byrow=TRUE)
colnames(pca) <- paste0('pc',seq(cols))
# calculate the kmeans
(k <- kmeans(pca,groups))
# plot the data and the means
plot(pca, col=k$clust, pch=15)
points(k$centers, col=seq(groups),pch="X", cex=3)