MATLAB Answers

change color scheme of a scatter plot

13 views (last 30 days)
here above you can see i have a 2-D Scatter plot. now i want to change the color scheme.
for all the values
  1. values <= 10 ----- green color
  2. (10<values<=20) ----- yellow color (for intermediate values i.e for 13 or 16 let yellow shades become darker and similar for all 4 ranges)
  3. (20 < values <= 50) ----- orange color
  4. (50 < values ) ---- red color.

  0 Comments

Sign in to comment.

Accepted Answer

Image Analyst
Image Analyst on 28 May 2020
Try this:
% values <= 10 ----- green color
% (10<values<=20) ----- yellow color (for intermediate values i.e for 13 or 16 let yellow shades become darker and similar for all 4 ranges)
% (20 < values <= 50) ----- orange color
% (50 < values ) ---- red color.
% First we need to create sample data because the original poster did not include it.
X = 8 : 2 : 16;
Y = 8 : 2 : 14;
[x, y] = meshgrid(X, Y);
x = x(:); % Make into 1-D vector.
y = y(:); % Make into 1-D vector.
z = randi(70, length(x), 1);
% Now we have our data and we can begin.
% We need to make up a colormap for the markers based on the value of z.
markerColors = zeros(length(x), 3);
rows = z <= 10;
markerColors(rows, :) = repmat([0, 1, 0], sum(rows), 1); % Green
rows = z > 10 & z <= 20;
markerColors(rows, :) = repmat([1, 1, 0], sum(rows), 1); % Yellow
rows = z > 20 & z <= 50;
markerColors(rows, :) = repmat([1, 0.59, 0], sum(rows), 1); % Orange
rows = z > 50;
markerColors(rows, :) = repmat([1, 0, 0], sum(rows), 1); % Red
scatter(x, y, 300, markerColors, 'filled');
grid on;

  0 Comments

Sign in to comment.

More Answers (1)

KSSV
KSSV on 27 May 2020
You should follow like this demo:
n = 100 ;
x = 1:n ;
y = rand(size(x)) ;
% divide based on values
idx1 = y >=0 & y<0.25 ;
idx2 = y >=0.25 & y<0.5 ;
idx3 = y >=0.5 & y<0.75 ;
idx4 = y >=0.75 & y < 1 ;
figure
hold on
plot(x(idx1),y(idx1),'*r')
plot(x(idx2),y(idx2),'*b')
plot(x(idx3),y(idx3),'*g')
plot(x(idx4),y(idx4),'*k')

  5 Comments

Show 2 older comments
Sajid Afaque
Sajid Afaque on 28 May 2020
as i am new to this concept,can you please explain me the above code.
darova
darova on 28 May 2020
What kind of explanation do you need?
Sajid Afaque
Sajid Afaque on 29 May 2020
i figured it out , thank you

Sign in to comment.


Translated by