Plotting different line colors within subplots avoiding duplicate colors?

3 views (last 30 days)
subplot(2,2,3)
plot(Volume_Major,'LineWidth',2,'color',C);
title ('Evolution of Volume week by week');
xlabel('Time');
ylabel('Volume');
set(gca,'XTick',XTicks);
set(gca,'XTickLabel',XLabels);
legend('EURUSD','EURGBP','EURJPY','USDJPY','GBPUSD','USDCHF','USDCAD','AUDUSD','NZDUSD')
where C is a predefined set {[0 0 1],[1 0.4 0.6],[0 1 1],[1 0 0],[0 1 0],[1 0 1],[0 0.5 0],[0.5 0.5 0.5],[0.7 0.3 0],[1 1 0]}
and Volume_Major is a matrix.
When I plot this I find that an error occurs in the plot. When I change the plot function to plot(Volume_Major,'LineWidth',2), it plots perfectly but colors are duplicated. How do I avoid this?

Accepted Answer

Tom
Tom on 28 Jun 2013
h = plot(Volume_Major,'LineWidth',2)
set(h,{'Color'},C')

More Answers (2)

Walter Roberson
Walter Roberson on 28 Jun 2013
h = plot(Volume_Major,'LineWidth',2);
for K = 1 : length(h)
set(h(K), 'LineColor', C(K,:));
end

Tom
Tom on 28 Jun 2013
Or:
set(gca,'NextPlot','ReplaceChildren','ColorOrder',cell2mat(C'))
plot(Volume_Major,'LineWidth',2)

Categories

Find more on Line Plots in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!