Clear Filters
Clear Filters

Does anyone know how to create colors?

8 views (last 30 days)
Pul
Pul on 16 Aug 2021
Commented: Pul on 17 Aug 2021
Hello everyone,
How can I create/ have different colors from the standard ones (i.g. 'g','r','b','m'...)?
Thank you.

Accepted Answer

Bjorn Gustavsson
Bjorn Gustavsson on 16 Aug 2021
Colours can be specified by rgb-values in a 1-by-3 array with values between zero and one. So for example:
light_blue = [0.5 0.5 1];
plot(0:12,randn(1,12),'color',light_blue)
HTH
  7 Comments
Bjorn Gustavsson
Bjorn Gustavsson on 17 Aug 2021
@Image Analyst, I have a poor short-time memory - but that was a bit extreme even for me.
@Pul, Great. Have a look at the file exchange for color-manipulation-tools that might help you with more demanding color-designing work - always look there for tools that solve or nearly solve your problems (it has saved me many months of work)!

Sign in to comment.

More Answers (1)

Image Analyst
Image Analyst on 16 Aug 2021
Try this:
% Create 20 different colors according to the jet color map.
colors = jet(20);
% Plot randome data, each curve with one of the colors we created.
% Basically you have to get the color equal to one row from colors.
for k = 1 : size(colors, 1)
thisColor = colors(k, :);
y = rand(1, 5) + 2 * k; % Create some random data.
plot(y, '.-', 'Color', thisColor, 'LineWidth', 4, 'MarkerSize', 50); % Plot this one curve.
hold on; % Don't let subsequent plots blow away this one we just drew.
end
grid on;
xlabel('X');
ylabel('Y');
  3 Comments
Image Analyst
Image Analyst on 17 Aug 2021
@Pul, like @Bjorn Gustavsson said, if you have some specific color you want to use, then you can do
light_blue = [0.5 0.5 1];
plot(1:12, randn(1,12), 'color', light_blue)
If you have created a list of lots of colors, like in my example, and, for example, you want to make the curve with the 10th color from the list, you can do
plot(y, '.-', 'Color', colors(10, :), 'LineWidth', 4, 'MarkerSize', 50); % Plot this one curve.
My demo showed that, where I plotted every color from k=1 to k=20.
Pul
Pul on 17 Aug 2021
@Image Analyst Yes, clear, I got it.
Thank you!

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!