# Plot inside a for loop

89 views (last 30 days)
Yogesh Mangar on 31 Mar 2012
hi all, I need your help. I am trying to plot a graph inside a for loop but only dots is appearing on the plot. the dots are not link with each other here is my code:
how can I make a clear line graph with all the dots joined. Help me please its urgent!!!
Walter Roberson on 2 Apr 2012

Kostas on 1 Apr 2012
well, it is like that because you don't create the x vector,it is just a value. You could try one of the both
x=0:1:250; %create x vector
x=x'; % transpose to be a column vector
s=size(x,1); % size of x
for i=1:s %loop over all values of x
a(i)=x(i)*...;
b(i)=x(i)*...;
.
y(i)=a(i)+b(i);
end
plot(x,y)
or instead of loop create a and b vectors direct
x=0:1:250; %create x vector
x=x'; % transpose to be a column vector
a=x*...;
b=x*...;
y=a+b;
plot(x,y)
Yogesh Mangar on 4 Apr 2012
thanks

saima on 31 Mar 2012
because each time loop runs your value of x and y becomes a scaler. try to use other variable than x and try to accumulate the values and then use the plot outside the loop
##### 2 CommentsShow 1 older commentHide 1 older comment
Kostas on 31 Mar 2012
try something like this
k=0; %initialize k
for x = 0:250
.
k=k+1 %raise k value +1 in each iteration
a(k) = x * ....;
b(k) = x * ....;
.
y(k) = a + b; % accumulate all values to the vector y, has the same size like x vector
end
x=x(:);
plot(x,y) %x and y are vectors