How can I plot data in different colors in a 3D plot?

Hi! I am a beginner Matlab user. I have a lot of colorimetric data (L * a * b * coordinates) and I want to represent them inside the L * a * b * 3D color space. In the plot, each point must have the matching color in rgb coordinates. Attached the script for only one point to better understand the problem. P.S. The data are saved in a xls file
rgb = lab2rgb ([46.33 1.17 12.35]);
L = 46.33;
a = 1.17;
b = 12.35;
plot3(a,b,L,'o','MarkerEdgeColor',[0.4699 0.4251 0.3500],'MarkerFaceColor',[0.4699 0.4251 0.3500]);
axis ([-100 100 -100 100 -100 100]);
axis square;
grid on;

3 comentarios

Adam
Adam el 20 de Sept. de 2018
Beware that not all 'colours' that you can represent in Lab space will have a valid RGB conversion though. The gamut of Lab space is larger than that of RGB space so some conversions will result in R, G or B values out of range ( < 0 or > 1 ).
Thank you for the suggestion! Is it possible to use L*a*b* values, instead RGB, in a Matlab plot?
Adam
Adam el 20 de Sept. de 2018
No, you have to convert to RGB to render on the screen.

Iniciar sesión para comentar.

 Respuesta aceptada

KSSV
KSSV el 20 de Sept. de 2018
Read about scatter and scatter3

1 comentario

Thank you very much! Using scatter3 I think i solved the problem.

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Preguntada:

el 20 de Sept. de 2018

Comentada:

el 20 de Sept. de 2018

Community Treasure Hunt

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

Start Hunting!

Translated by