4

次のように作成された3D散布図があります。

library(rgl)
N <- 10000

X <- rnorm(N,0,1)
Y <- rnorm(N,0,1)

Z <- X * Y

want <- Z >0 & X>0

palette <- colorRampPalette(c("blue", "green", "yellow", "red")) 
col.table <- palette(256)
col.index <- cut(Z, 256)
plot3d(X,Y,Z, col=col.table[col.index])
grid3d(c("x", "y", "z"))

これはうまくいきます。今、別のプロットを重ねたいので、これを試しました:

par(new=F)
plot3d(X[want],Y[want],Z[want], col="black")

ただし、これは失敗します。古いプロットが上書きされるだけです。新しいプロットを重ねる方法はありますか?

4

3 に答える 3

4

私はそれをテストしていませんが、 ...points3dの代わりに試してみることから始めるべきだと思います.FYIはプロットにはまったく影響を与えず、ベースプロットのみに影響します.plot3dpar(new=FALSE)rgl

于 2012-11-07T20:08:57.593 に答える
1

別のパッケージを使用していますが、scatterplot3d パッケージでは、points3d 属性を使用してポイントを追加できます。

library(scatterplot3d)

# main scatterplot
s3d<-scatterplot3d(x1,y1,z1,color="black",
         type="l",box=FALSE,highlight.3d=F,
         xlab="x",ylab="y",zlab="z")

# add some points 
s3d$points3d(x2,y2,z2,col="red",pch=20)  

# add a line
s3d$points3d(x3,y3,z3,col="blue",type='l')  
于 2016-09-12T09:06:02.230 に答える