load and plot many .mat files in a loop

5 views (last 30 days)
Siriki Kone
Siriki Kone on 24 Jun 2022
Commented: Voss on 25 Jun 2022
Hi, i have many .mat files which i would like to plot in the same figure. The problem is my data are not loading in my for loop:
close all
clear all
clc
load('C:\ordner1\ordner2\tc.mat');
Path='C:\ordner1\ordner2\Station_01\hhz';
P=strcat(Path,'\PSDPDFs\1120\') %P=strcat(Path,'\hhe\06\');
S=(fullfile(P,'*.mat'));
AllFiles=dir(S);
for kk=1:5 %numel(AllFiles)
File3=AllFiles(kk).name;
Data = load(File3); %load(strcat(P,File3));
semilogx(tc,Data.Z3)
hold on
end
xlabel('Period (s)')
ylabel('Power 10*log10 (m/s^2)/Hz or dB')
title('PSDPDF diagram containing 1 month of Data composed of 1 Hour segments')
axis tight
hold off
as i said i become an error with the load function:
Error using load
Unable to read file 'PSDPDF1.mat'. No such file or directory.
Error in plot_PSDPDF (line 13)
Data = load(File3); %load(strcat(P,File3));
i try another code by changing load(File3) with load(strcat(P,File3)):
close all
clear all
clc
load('C:\ordner1\ordner2\tc.mat');
Path='C:\ordner1\ordner2\Station_01\hhz';
P=strcat(Path,'\PSDPDFs\1120\') %P=strcat(Path,'\hhe\06\');
S=(fullfile(P,'*.mat'));
AllFiles=dir(S);
for kk=1:5 %numel(AllFiles)
File3=AllFiles(kk).name;
Data=load(strcat(P,File3));
semilogx(tc,Data)
hold on
end
xlabel('Period (s)')
ylabel('Power 10*log10 (m/s^2)/Hz or dB')
title('PSD diagram containing 1 month of Data composed of 1 Hour segments')
axis tight
hold off
i got another error message:
Error using semilogx
Unrecognized property PSDPDF for class Line.
Error in plot_PSDPDF_220624 (line 14)
semilogx(tc,Data)
can someone help me with that

Answers (1)

Voss
Voss on 24 Jun 2022
Edited: Voss on 24 Jun 2022
Try it like this
Data=load(strcat(P,File3));
semilogx(tc,Data.Z3)
Somehow you dropped off the .Z3 when you tried this
Data=load(strcat(P,File3));
semilogx(tc,Data)
  2 Comments
Siriki Kone
Siriki Kone on 25 Jun 2022
ooh I forgot to say, i did try it too, i got the following msg:
Unrecognized field name "Z3".
Error in plot_PSDPDF_220624 (line 14)
semilogx(tc,Data.Z3)
Data should actually be my psdpdf (97,1) mat file but instead of that i get this:
Data =
struct with fields:
PSDPDF: [97×1 double]
Voss
Voss on 25 Jun 2022
Data=load(strcat(P,File3));
semilogx(tc,Data.PSDPDF)

Sign in to comment.

Categories

Find more on Entering Commands in Help Center and File Exchange

Products

Community Treasure Hunt

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

Start Hunting!