2012-01-04 65 views
9

我想绘制使用plot3d()rgl)的MDS分析结果。数据和代码如下所示:将标签名称绘制到由plot3d(rgl)生成的3D绘图上

threedim$points 
       [,1]  [,2]  [,3]  [,4] 
    Dutch  -6.45931417 -2.1589222 -5.829244 -0.4891066 
    German  -7.27770201 0.2666916 -2.198595 6.8658602 
    Albanian 4.11799731 0.6810336 11.356935 -2.2623921 
    Armenian 13.58431670 21.6527626 -2.245146 6.3506665 
    French  -0.24170759 -0.8579159 14.197611 -0.1871443 

    threedim$points[,1] -> x 
    threedim$points[,2] -> y 
    threedim$points[,3] -> z 
    library(rgl) 
    plot3d(x,y,z) 
    text(c("Dutch","German","Albanian","Armenian","French")) 

我收到以下错误信息:

“的警告信息: 在xy.coords(X,Y,回收= TRUE):来港受到胁迫介绍“

我在做什么错?

回答

9

使用text3d,而不是试图混合text(基本图形)与RGL图形...

dat <- read.table(textConnection(
"nation x y z w         
Dutch  -6.45931417 -2.1589222 -5.829244 -0.4891066 
German  -7.27770201 0.2666916 -2.198595 6.8658602 
Albanian 4.11799731 0.6810336 11.356935 -2.2623921 
Armenian 13.58431670 21.6527626 -2.245146 6.3506665 
French  -0.24170759 -0.8579159 14.197611 -0.1871443"), 
header=TRUE,as.is=TRUE) 

library(rgl) 
with(dat,plot3d(x,y,z)) 
with(dat,text3d(x,y,z,nation))