Etkileşimli 3D grafikler için olası paketlerden biri rgl'dir. Benim yapmak istediğim, bazı faktör değişkenlerine göre renk kodlaması ile 3D dağılım grafiğini oluşturmaktır. 3D boyutlu dağılım grafiği, plsr analizinden kaynaklanan yüklemeler içindir.Scatter3d çizimine bir gösterge eklenmesi
elde edilen arsa bakar
gibi bir tabloda verilmiştir örnek veriler:
> loadings
| Comp 1 | Comp 2 | Comp 3 | Class
-------------------------------------------------------------------------------------------
TEMP | -0.0607044182964255 | "0.0437618450165671" |"0.045124991801441" | "global"
MW | "-0.13414890573833" | "-0.0970537799069731" |0.263043734662182" | "local"
DM |"-0.183751529577861" | "-0.102703237685933" |"0.0640549385564205" | "global"
CHG |"-0.0558781715833019"| "0.125155347350922" |"-0.119258450107321" | "local"
veya oluşturulabilir:
loadings <- data.frame(Comp1 = c(1.2, 3.4, 5.6, 13.1), Comp2 = c(4.3, 1.2, 7.7, 9.8),
Comp3 = c(1.2,6.9,15.6,15.0),
row.names = c("TEMP", "MW", "DM", "CHG"),
Class = c("global", "local", "global", "local"))
scatter3d(x=loadings[[1]], y=loadings[[2]], z=loadings[[3]],
point.col = as.numeric(as.factor(loadings[,4])), size = 10)
elde edildi arsa sa Beni tarzı, ama değişken "Sınıf" sadece iki seviye olduğu gibi çok daha kolaydır: rgl içinde efsaneyi eklemek için herhangi bir olasılık mı:
Soru olduğu 'küresel' ve 'Yerel' ya da belki bağımsız bir efsane arsaya eklenebilir? Yardım için şimdiden teşekkür ederiz!
Cevap geçerli: sınıfına göre etiketlerle
scatter3d(x=loadings[[1]], y=loadings[[2]], z=loadings[[3]],
point.col = as.numeric(as.factor(loadings[,4])), size = 10, type = 's')
text3d(x=1.1, y=c(.9,1), z=1.1,levels(loadings[[4]]),col="black")
points3d(x=1.2,y=c(.9,1),z=1.1, col=as.numeric(as.factor(loadings[,4])), size=5)
arsa: Bir plot3d
görüntü değil
kodu eklemek ve Lütfen sorunuza (gerçek veya uydurma ya) olası veriler [asgari repr kılacak şekilde olursa oducible örneği] (http://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example). – SlowLearner
Bu yeni kod bir hata veriyor: "complete.cases (x, y, z): ..." hatası. P –
Bu hatayı düzeltildi. – Boddha