error in for loop

2 views (last 30 days)
FIR
FIR on 8 Nov 2011
i have the following code
clc
out=[3 4 5 6 7 8]'
out1=[1 2 3 4 5 6]'
for i=1:size(out)
for j =1:size(out1)
xlabel([ 'resp',num2str(out(i))])
ylabel([ 'resp',num2str(out1(j))])
end
end
for this i get only one graph with X axis label as 3 and y axis label as 1
i need six graphs with x ad y label as in out and out1 .please help

Accepted Answer

Wayne King
Wayne King on 8 Nov 2011
you're changing the value each time through the for loops.
How about:
out=[3 4 5 6 7 8];
out1=[1 2 3 4 5 6];
for nn = 1:6
subplot(3,2,nn)
xlabel(['resp ', num2str(out(nn))]);
ylabel(['resp ', num2str(out1(nn))]);
end
  4 Comments
Andrei Bobrov
Andrei Bobrov on 8 Nov 2011
out=[3 4 5 6 7 8];
out1=[1 2 3 4 5 6];
for nn = 1:6
figure
xlabel(['resp ', num2str(out(nn))]);
ylabel(['resp ', num2str(out1(nn))]);
end
FIR
FIR on 8 Nov 2011
thanks andrei

Sign in to comment.

More Answers (1)

Jan
Jan on 8 Nov 2011
At first replace "1:size(out)" by "1:numel(out)". SIZE replies a vector.
Do you want the different diagrams inside on figure or on different figures? Currently you set the labels of a single diagram 36 times, therefore I'm not sure how you want to distribute this to 6 diagrams.
  1 Comment
FIR
FIR on 8 Nov 2011
Jan i need 6 figures
ist figure X ,Y axis 3,1
2nd figure X ,Y axis 4,2
;
;
;
6th figure X,Y axix 8,6

Sign in to comment.

Tags

Community Treasure Hunt

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

Start Hunting!