RGB colors in scatter3
2 views (last 30 days)
Show older comments
Im trying to plot n [X,Y,Z] dots in 3d with their colors given by C which is a nx3 matrix describing the RGB colors for each dot (graded colors).... but its not working!!!!
scatter3(X,Y,Z,S,C, 'filled')
any suggestions?
0 Comments
Accepted Answer
Geert
on 5 Sep 2013
Have a look at the example in the help:
[x,y,z] = sphere(16);
X = [x(:)*.5 x(:)*.75 x(:)];
Y = [y(:)*.5 y(:)*.75 y(:)];
Z = [z(:)*.5 z(:)*.75 z(:)];
S = repmat([1 .75 .5]*10,numel(x),1);
C = repmat([1 2 3],numel(x),1);
scatter3(X(:),Y(:),Z(:),S(:),C(:),'filled')
4 Comments
Image Analyst
on 11 Jul 2014
Yes, any function in MATLAB that takes a 3 element numerical array for color must be in the range 0-1 instead of 0-255. If you have 255 numbers, for example determined them from some artwork in Photoshop of wherever, then you can just divide by 255
color255 = [100, 150, 240];
myColor = color255 / 255; % Then use this array in scatter() or wherever...
More Answers (0)
See Also
Categories
Find more on Surface and Mesh Plots in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!