2013-11-01 154 views
0

我試圖在三維圖中繪製不同的組(例如A,B,C)數據,其中每個組具有不同的顏色(例如紅色,綠色,藍色)通過使用scatterplot3d()。目前,我正在爲每個數據集創建3-D圖。但是,我無法找到一種方法,通過使用不同的顏色來繪製同一3d圖中的所有數據。R在單個三維圖中繪製多組數據

我想實現與二維情況類似的情況,您可以通過plot()初始繪製第一個組,然後使用points()添加其餘組。

有沒有人遇到同樣的問題?

+0

我曾經這樣做,但發現它更容易使用GGPLOT2。我不是出口所以不能你的問題。看看這個http://www.r-bloggers.com/turning-your-data-into-a-3d-chart/ –

回答

2

您可以使用rgl中的plot3d()。 既然你沒有提供的數據,我做了一些了......

require(MASS) 
mus <- 1:3 
sigma <- diag(1, 3, 3) 
mat <- mvrnorm(100, mus, sigma) 

df <- data.frame(rbind(mvrnorm(100, mus, sigma), 
      mvrnorm(100, 2*mus, sigma), 
      mvrnorm(100, 3*mus, sigma))) 

df$fac <- factor(rep(LETTERS[1:3], each = 100)) 

require(rgl) 
plot3d(df$X1, df$X2, df$X3, col=as.numeric(df$fac)) 
+0

非常感謝。你還可以改變劇情的角色類型嗎?我嘗試過,但沒有奏效。 – Dio

+0

plot3d中沒有'pch'參數。 – EDi