Colorbar with a range taken from a variable

Hello,
I have a matrix organized in this way:
M= col1, col2.... col10
col1 and col2 are the x and y position of the data, col10 is a property of this data and it is a number.
I would like to use the numbers in col10 to make a colormap and assign ot every point a specific color that depends on the value in col10.
I did this long time ago, but I don't remember how, can somebody help me, please?
Thanks
F.

 Risposta accettata

I am not certain what plot you want to use or what result you want.
Perhaps something like this —
x = linspace( 0, 5);
y = linspace(-5, 5);
z = exp(-((x-2.5).^2 + y.^2));
figure
scatter3(x, y, z, 25, z, 'filled')
colormap(turbo)
colorbar
view(45,30)
x = randn(1, 1000);
y = randn(1, 1000);
z = exp(-(x.^2 + y.^2));
figure
scatter3(x, y, z, 25, z, 'filled')
colormap(turbo)
colorbar
.

5 Commenti

Francesco
Francesco il 5 Ago 2024
Spostato: Star Strider il 5 Ago 2024
YES!!!
I did it, thanks!
figure(1)
scatter(L01(:,2),L01(:,3),[],L01(:,10)/10^6,'+')
colorbar
xlim([-20 20])
ylim([-20 20])
xlabel('x [mm]')
ylabel('y-[mm]')
title('Gaf n. 1')
Francesco
Francesco il 5 Ago 2024
Spostato: Star Strider il 5 Ago 2024
is it correct like this?
As always, my pleasure!
Yes! That is correct. The syntax depends on the plot you want. For a 2D scatter plot, the fourth argument defines the colour of the markers.
Thanks a lot Star Strider,
If what I wrote is ok than your example helped my memory a lot!
Cheers
As always, my pleasure!
Thank you!

Accedi per commentare.

Più risposte (1)

Try something like
M = [col1; col2; col10];
contourf(M, col10)
colorbar('Ticks', col10)
This creates a contour plot with the specific levels from col10 and while labeling them in a color bar. Let me know if this helps.

Categorie

Scopri di più su Graphics Objects in Centro assistenza e File Exchange

Prodotti

Release

R2018a

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by