Color of surf function

5 views (last 30 days)
CHANDRABHAN Singh
CHANDRABHAN Singh on 2 Jun 2022
Answered: KSSV on 2 Jun 2022
I wamt to plot 3 spheres with different colours. But i am unable to do it. I am sharing the code as well. Thank you for your help.
x_min = 5; x_max = 45; y_min = 5; y_max = 45; z_min = 5; z_max = 45;
centre_x(1) = x_min + rand(1)*(x_max-x_min);
centre_y(1) = y_min + rand(1)*(y_max-y_min);
centre_z(1) = z_min + rand(1)*(z_max-z_min);
radius(1) = 4+rand(1)*(5-4);
volume = (4/3)*pi*radius(1)^3; i=2; iteration=0;
plot_sphere(centre_x(1),centre_y(1),centre_z(1),radius(1));
%% plot_sphere function
function [] = plot_sphere(xi,yi,zi,r)
[x, y, z] = sphere;
x = x.*r;
y= y.*r;
z = z.*r;
surf(x+xi, y+yi, z+zi);
%colormap summer
mymap = [1 0 1];
%cmap =
colormap(mymap);
hold on;
axis equal
end

Accepted Answer

Walter Roberson
Walter Roberson on 2 Jun 2022
You can only use one colormap per axes. You need to use different axes, or you need to supply "CData" in the surf() call passing rgb color data

More Answers (1)

KSSV
KSSV on 2 Jun 2022
mymap = [1 0 0];

Categories

Find more on Colormaps in Help Center and File Exchange

Products


Release

R2020b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!