How to use same colors inn all figures when making several figures with a loop
Afficher commentaires plus anciens
I have created a loop that makes several figures. When I apply "rand(1,3)) in the loop below, each figure gets different colors. Do you know how I can change the loop below to so that the colors are the same in every figure?
Alder = {'<20', '2029','3039','4049','5059','6069','>70', 'all'};
Vars = {gjG, gjR, gjI, gjDI, gjBV, GtoDI, GtoBV, RtoDIplusR, ItoG, RtoG, GtoI};
Vars2 = {'gjG', 'gjR', 'gjI', 'gjDI', 'gjBV', 'GtoDI', 'GtoBV', 'RtoDIplusR', 'ItoG', 'RtoG', 'GtoI'};
Aar = {'2011', '2012', '2013_1', '2014_1', '2014_s2', '2014_s5'};
n = length(Vars);
nAar = length(Aar);
for iVars = 1:n;
aVars = Vars{iVars};
figure,title(Vars2{iVars});
hold on
for iAar = 1:nAar
plot(aVars(11,:,iAar), 'color', rand(1,3));
set(gca, 'XTickLabel',Alder)
legend((Aar),'location','NE','FontSize',10);
end
hold off
end
Réponse acceptée
Plus de réponses (2)
Azzi Abdelmalek
le 13 Mai 2013
Use
plot(aVars(11,:,iAar), 'color', [1 0 1]);
1 commentaire
Karl
le 13 Mai 2013
Image Analyst
le 13 Mai 2013
Make up a table of colors. It should be N rows (for N colors that you want to use) by 3 columns (a red, a green, and a blue value). The numbers should go from (0,0,0) for black up to (1,1,1) for white. If you want, you can use some built in colormaps, like lines:
numberOfColors = 15; % Whatever you want.
myColorMap = lines(numberOfColors); % Use lines(), jet(), winter(), or whatever.
Whenever you want to plot the curve in the k'th color, you just do
plot(x, y, 'Color', myColorMap(k, :));
Do this for every axes that you want to plot in.
1 commentaire
Karl
le 13 Mai 2013
Catégories
En savoir plus sur Line Plots dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!