Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

3D Plotting in R - Using a 4th dimension of color

Tags:

plot

r

rgl

I am using the plot3d function to make a 3d plot in my R script. I'd like to add a 4th dimension, which will be color. How can I do this?

Specifically, assume I have the following code:

plot3d(x, y, z, col=cols, size=2, type='s')

how would I populate cols based on a vector of values acting as my 4th dimension.

like image 643
CodeGuy Avatar asked Nov 04 '11 17:11

CodeGuy


1 Answers

Just make a colormap, and then index into it with a cut version of your c variable:

x = rnorm(100)
y = rnorm(100)
z = rnorm(100)

c = z
c = cut(c, breaks=64)
cols = rainbow(64)[as.numeric(c)]

plot3d(x,y,z,col=cols)

enter image description here

like image 187
John Colby Avatar answered Sep 27 '22 22:09

John Colby