plotting 13 lines with different colors !!

i am plotting about 15 different lines in the same graph and i need more color codes than the existing 8 which are (r g b k c m y w)can any one help ??

 Risposta accettata

Sean de Wolski
Sean de Wolski il 12 Feb 2013
Modificato: Sean de Wolski il 12 Feb 2013
Use the RGB components explicitly:
h = zeros(20,1);
figure; hold on
for ii = 1:20;
h(ii) = plot(1:10,cumsum(rand(1,10)),'Color',rand(1,3));
end
legend(h);

3 Commenti

Random colors are not a guarantee, that there are different colors.
the odds are in my favor ;)

Accedi per commentare.

Più risposte (2)

Jan
Jan il 12 Feb 2013
Modificato: Jan il 12 Feb 2013
You can use RGB colors, which are defined by a [1 x 3] vector. There are several colormaps available in Matlab already, e.g.:
cmap = jet(15);
for k = 1:15
line(1:10, rand(1:10)+k, 'Color', cmap(k, :));
end

2 Commenti

cmap = jet(15);
for k = 1:15
line(1:10, rand(1,10)+k, 'Color', cmap(k, :));
end
For me this worked very nicely!

Accedi per commentare.

.
%https://zil.ink/korosh -------- Ways to contact me ----------
% Korosh Agha Mohammad Ghasemi !
% Chemical Engineering at Shiraz University
x=linspace(0,2,100);
figure;
for a=[0.1 0.5 1 2 4]
y=x.^a; %The function is hypothetical
if a == 0.1 %Any color can be substituted
y=x.^a;
plot(x,y,'k') %Now choose the color
hold on
elseif a == 0.5
y=x.^a;
plot(x,y,'b') %Now choose the color
hold on
elseif a==1
y=x.^a;
plot(x,y,'g') %Now choose the color
hold on
elseif a==2
y=x.^a;
plot(x,y,'r') %Now choose the color
hold on
elseif a==4
y=x.^a;
plot(x,y,'y') %Now choose the color
hold on
grid on
end
end

Categorie

Community Treasure Hunt

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

Start Hunting!

Translated by