Clear Filters
Clear Filters

How to read all mat files in folder and save plot as image

10 views (last 30 days)
Hello everyone, i hope you are doing well. i have the following 100 .mat files in folders.
i want to save the plot of all .mat files as image.
I have implement the following code for single mat file
S = load('C:\Users\DELL\Documents\MATLAB\Examples\R2021b\deeplearning_shared\ModulationClassificationWithDeepLearningExample\Dataset1\frame8PSK001.mat');
Med Future
Med Future on 2 Jun 2022
@Stephen23 i want to read all mat files from folder then plot real of the mat file and saves the plot as images as i done for one file in above code

Sign in to comment.

Accepted Answer

Mathieu NOE
Mathieu NOE on 2 Jun 2022
you can try / build your solution based on this example
here I wanted all data being in one single plot so I concatenated all the files data in one output array. You can of course avoid this step and plot individually each file and save it
fileDir = pwd; % this directory
fileNames = dir(fullfile(fileDir,'frame*.mat')); % get list of data files in directory
fileNames_sorted = natsortfiles({}); % sort file names into natural order
% (download FEX :
M= length (fileNames_sorted);
time1 = [];
signal1 = [];
for f = 1:M
S = load(fullfile(fileDir, fileNames_sorted{f}))
% contatenation of all individual files data
time1 = [time1; S.ScopeData1.time];
signal1 = [signal1; S.ScopeData1.signals.values];
% save plot

More Answers (1)

Image Analyst
Image Analyst on 2 Jun 2022
To save the plot you can use exportgraphics:
fileName = fullfile(folder, 'frame8PSK001.png');
exportgraphics(gca, fileName);


Find more on Printing and Saving in Help Center and File Exchange




Community Treasure Hunt

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

Start Hunting!