Change colour of all scatter points above/below a reference line
1 visualización (últimos 30 días)
Mostrar comentarios más antiguos
Jigsaw
el 15 de Feb. de 2021
Comentada: Jigsaw
el 15 de Feb. de 2021
My aim is to have a plot that has all scatter points above the diagonal a different colour than the points below the diagonal.
I came across answers for colouring partcular points in the plot that are already known. But In my case I have n number of plots that have random scatter points. The only thing common in all the n plots is the diagonal line and the x,y scale.
figure()
A = [1,3,5,7,2,5,3,7,9,5]; % A and B are examples of one of the n plot data
B = [2,6,3,5,8,6,4,2,7,3];
Diag_X = [0,10]; % Diag_X and Diag_Y form a reference line that is common in all the plot data
Diag_Y = [0,10];
scatter (A, B, '*');
hold on
plot (Diag_X, Diag_Y, 'k');
I'd like a function that could be used on any of the n scatter plots such the diagonal line is taken a reference and all the points above it are red and all below all blue.
0 comentarios
Respuesta aceptada
Walter Roberson
el 15 de Feb. de 2021
colormap = [1 0 0; 0 0 1]; %red, blue -> above, below
A = [1,3,5,7,2,5,3,7,9,5]; % A and B are examples of one of the n plot data
B = [2,6,3,5,8,6,4,2,7,3];
Diag_X = [0,10]; % Diag_X and Diag_Y form a reference line that is common in all the plot data
Diag_Y = [0,10];
idx = 1 + (A > B);
color = colormap(idx,:);
pointsize = 15;
scatter (A, B, pointsize, color, '*');
hold on
plot (Diag_X, Diag_Y, 'k');
hold off
Más respuestas (0)
Ver también
Categorías
Más información sobre Scatter Plots en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!