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 Comments

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?
No, you have to convert to RGB to render on the screen.

Sign in to comment.

 Accepted Answer

Read about scatter and scatter3

1 Comment

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

Sign in to comment.

More Answers (0)

Asked:

on 20 Sep 2018

Commented:

on 20 Sep 2018

Community Treasure Hunt

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

Start Hunting!