2012-02-29 46 views
-2

我有一个质心,例如A.我有其他100个点。所有这些点都是高维的,例如1000维。有没有一种方法可以在二维空间中根据它们与A的距离将这些点可视化?R中高维点的可视化

+0

提供您尝试过的示例数据集和/或代码很有帮助。另外,对我而言,你的解释有点含糊,可以用一些说明。 – 2012-02-29 20:32:17

回答

4

在低维空间中可视化高维点的常见(但很简单)方法是使用某种形式的multi-dimensional scaling

dat <- matrix(runif(1000*99),99,1000) 
#Combine with "special" point 
dat <- rbind(rep(0.1,1000),dat) 

out <- cmdscale(dist(dat),k = 2) 

#Plot everything, highlighting our "special" point 
plot(out) 
points(out[1,1],out[1,2],col = "red") 

enter image description here

您还可以检查出isoMDSsammonMASS包其他实现R.

+0

谢谢,乔兰。但是你能告诉我为什么(out [1,1],out [1,2])是附加的点吗?这是一个以厘米为单位的规格,即所输出的数据会在输出的头部出现吗? – user288609 2012-03-01 18:41:34

+0

@ user288609这里没有什么特别的。它只是按照你提供的点的顺序输出2D坐标。我任意指定'dat'的第一行作为我的“特殊”点,但是你可以使用任何你想要的行。 – joran 2012-03-01 18:47:51

0

距离(我假设你是指差异向量的范数)只有1个值,所以你可以计算这些范数并在一维图上显示它们,但对于2D,你需要第二个参数。