How can I create a gradient of 255 line plots?

I am plotting many lines on a single plot but too many to manually give each line a specific color. I need to create a gradient of these lines (each line representing a different time point) to show that the lines gradually shift down. I figured out how to create a gray gradient but can't figure out how to create a color gradient. This is the command written for the gray gradient and attached an image of what it looks like. % sheet=1 DataZ=csvread(trimname,sheet) % plotsize=size(DataZ,2) Frequency=DataZ(:,1) %hours Zimpedance=DataZ(:,2:plotsize) LogZ=log10(Zimpedance) contour(LogZ) mesh(LogZ) % get(gca,'ColorOrder') N = plotsize; C = repmat(linspace(1,0.1,N).',1,3); axes('ColorOrder',C,'NextPlot','replacechildren') plot(log10(Frequency),LogZ) title('60C Harr/DI 0V PE') xlabel('Log Frequency (Hz)') ylabel('Log Z (Ohm)')

Answers (2)

I think the solution would be like this. In this example, like color changes as the y-intercept of the like decrease.
% Gradually shifting lines data
% "plot(Frequency,Data(:,k))" shows k-th line
yIntercept = 10*exp(-0.05*(1:100));
Data = repmat(linspace(2,1)',1,100);
Data = Data + yIntercept;
Frequency = linspace(1,2)';
% Set color vector
c = parula(100);
% Visualize the result
figure
hold on
for kk = 1:100
plot(Frequency,Data(:,kk),'Color',c(kk,:))
end
box on

3 Comments

I was able to use your suggestion to create a gradient, thank you. But do you know if it's possible to get a gradient of the same color? For example line 1 very light pink and the last line dark red.
Please replace 'Set color vector' section in the above script as follows. In this case, the total number of line is assumed to 100.
% Set color vector
cStart = uisetcolor([1 0.8 0.8],'Select a start color');
cEnd = uisetcolor([0.8 0.0 0],'Select an end color');
c = interp1([1;100],[cStart;cEnd],(1:100)');
Now is there an elegant way to do that (without a for loop) ? :D

Sign in to comment.

I'm using
colororder([jet(44)])
for similar functionality

Products

Release

R2018b

Asked:

on 6 Nov 2018

Answered:

on 29 Nov 2022

Community Treasure Hunt

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

Start Hunting!