How to adjust plots with several subplots with different loops?

4 views (last 30 days)
Dear all,
I a have problem in adjusting the loop in the subplots and hope, that someone can help me with it.
What I would like to plot is:
However, I would like to automate and shorten it by loops with:
Unfortunately, the loop for the subplot does not match the loop for the y matrix, i.e., in subplot (1,3,1) I get the 3 times y(:,1) for the y axis instead of y(:,1), y(:,2), y(:,3). Is there a way to fix this or do I have to plot it individually ?
Thanks a lot for your help!
Regards,
Anna
  2 Comments
Catalytic
Catalytic on 3 Jun 2023
Edited: Catalytic on 3 Jun 2023
Your code cannot be copy&pasted since it is not posted as text. Therefore, it is unlikely anyone will try to modify it.
Amelie
Amelie on 4 Jun 2023
Thanks for the advice! I haven't thought about that, but you are absolutely right.

Sign in to comment.

Accepted Answer

VBBV
VBBV on 3 Jun 2023
Edited: VBBV on 3 Jun 2023
You can modify the for loop something like this as shown below
x = rand(1,10);
z = rand(1,10);
w = rand(1,10);
k = 0;
figure
for ii = 1:3
y = rand(10,3);
subplot(1,3,ii)
hold on
plot(x,y(:,k+ii),'linewidth',4,'Color','cyan')
plot(z,y(:,k+ii+1),'linewidth',2,'Color','red')
plot(w,y(:,k+ii+2),'linewidth',1.5,'Color','blue')
k = k - 1;
legend('show')
end

More Answers (1)

Catalytic
Catalytic on 3 Jun 2023
Edited: Catalytic on 3 Jun 2023
ord={x,z,w};
for i=1:3
subplot(1,3,i);
h=plot(ord{i},y,'LineWidth',4);
[h.Color]=deal('cyan','red','blue');
end

Categories

Find more on Loops and Conditional Statements in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!