I want to call multiple files and plot them using a loop

6 views (last 30 days)
Greetings
Lets say I have 'n' number of .mat files with random names, now, I want to call them, use some equations and plot them, but all on the same graph. Can I do that using a loop and make my life easier?
Right now I am calling them sperately like this (this is just for calling 1 file):
dirdata1 = dir('Smooth_cylinder_5ms_3D.mat');
file = dirdata1';
s = load(file.name);
L = extractfield(s,'b')';
a1 = s.b;
U_bar_2_1 = mean(a1)';
U_inf_2_1 = max(U_bar_2_1);
ud_2_1 = max(U_inf_2_1-U_bar_2_1);
yplus_2_1 = (y)/(nu/ud_2_1);
u_prime2_1 = [];
Uplus_2_1 = U_bar_2_1/ud_2_1;
..........
And then I plot using this(this is just for 1 file, it goes on until n number of files): Also I am running out of coloured lines how do I encounter that?
plot(y/D,U_bar_2_1/U_inf_2_1,'k-'...........

Answers (1)

Mathieu NOE
Mathieu NOE on 24 Mar 2021
hello
attached a few examples - they are for excel / csv files but you can easily change the code for mat files (like : ... = uigetfile('*.mat')
hope it helps
  1 Comment
Zaryab Ali
Zaryab Ali on 24 Mar 2021
I think I forgot to mention.. those .mat files are double i.e. they are a 491601x39 double files. So each file needs a seperate line plotted. And I want all those lines on the same figure with different colour.

Sign in to comment.

Products


Release

R2020b

Community Treasure Hunt

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

Start Hunting!