Clear Filters
Clear Filters

how to draw a 3d plot with different color?

2 views (last 30 days)
Hi
I want to assign different color to the specific values in a 3D plot. for example: I have x=[1;2;4;3] y=[1;2;3;4] z=[0.1;0.2;0.3;0.4]
for z>=0.2 scatter3(x,y,z,'b','.') for z=<0.2 scatter3(x,y,z,'g','.')?
thanks

Accepted Answer

Rik
Rik on 31 Jan 2018
Logical indexing is your answer:
scatter3(x(z>0.2),y(z>0.2),z(z>0.2),'b.')
hold on
scatter3(x(z=<0.2),y(z=<0.2),z(z=<0.2),'g.')
  4 Comments
Rik
Rik on 31 Jan 2018
You could hack a colorbar to do something like that, but it won't be pretty. (set the tick property to 0.2 and use caxis)
Walter Roberson
Walter Roberson on 31 Jan 2018
color = repmat('b', size(z));
color(z<0.2) = 'g';
pointsize = 20;
scatter(x, y, pointsize, color);

Sign in to comment.

More Answers (0)

Categories

Find more on Graphics Performance 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!