2012-01-04 16 views
9

tarafından oluşturulan 3B arsa üzerine etiket adlarını çizme plot3d() (rgl) kullanarak 3 boyutlu bir MDS analizinden sonuçları çizmek istiyorum. Bunun gibi veriler ve kod görünüm:plot3d (rgl)

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")) 

aşağıdaki hata iletisini olsun: UA'lar zorlama tarafından tanıtılan: xy.coords (x, y, geri dönüşüm = DOĞRU) olarak :

"Uyarı mesajı "

Neyi yanlış yapıyorum?

cevap

9

Kullanım text3d ziyade rgl grafiklerle text (baz grafikler) karıştırmak için çalışıyor ...

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))