Info

This question is closed. Reopen it to edit or answer.

Need help on my for loop

1 view (last 30 days)
adi kul
adi kul on 29 May 2015
Closed: MATLAB Answer Bot on 20 Aug 2021
I am having a for loop which is a part of my script. There are 100 mat files in a folder which I am analyzing. Now in each file there is a variable "para" in which I am interested in. This variable is a 200x1 matrix and contains many different values. So i am interested in max and min of it.
Now I want to skip the values after calculation which are greater than 40 and to convert them to 20 and then plot.
So here is my code:
for i = 1:100
load(matFiles(i).name)
x(i)=max(para)-min(para)+1;
if x(k)>70,
x(k)=20;
end
plot(i, x(i), '.')
grid on
title('X')
xlabel('Mat file number');
ylabel('Para');
if i==1,
hold on
end
end
Can you tell me if I am doing it correctly? If not please let me know the correction.
also I got following command from one of my previous question
if i==1,
hold on
end
What is the logic behind this? I mean what it actually do?

Answers (1)

Nobel Mondal
Nobel Mondal on 29 May 2015
Edited: Nobel Mondal on 29 May 2015
Isn't there a mix-up between 'i' and 'k' index?
Also, you could use 'hold on' before starting the loop and avoid the condition check for each iteration. 'hold on' essentially lets you plot multiple data series in the same figure - by retaining the previous plot(s) while adding the latest one. Here is the matlab documentation: hold on off

This question is closed.

Tags

No tags entered yet.

Community Treasure Hunt

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

Start Hunting!