Borrar filtros
Borrar filtros

plotting multiple figures with auto naming

7 visualizaciones (últimos 30 días)
Mohammed Alhamdan
Mohammed Alhamdan el 25 de Dic. de 2022
Comentada: Image Analyst el 27 de Dic. de 2022
I have a folder with multiple txt files that I want to print into separate figures. How can I load, plot, and print each figure with the same file name without naming them manually each time?

Respuesta aceptada

Image Analyst
Image Analyst el 25 de Dic. de 2022
Is this what you want to do?
% Get a list of all txt files in the current folder.
fileList = dir('*.txt')
numFiles = numel(fileList)
% Create a figure for each file.
for k = 1 : numFiles
% Build the string you want to display in the titlebar of the figure.
thisFileName = sprintf('File #%d of %d = %s', k, numFiles, fileList(k).name)
% Create a figure and make the title bar have that string.
hFig(k) = figure('Name', thisFileName, 'NumberTitle','off');
% Now do stuff with thisFileName, like plot it or whatever
end
  4 comentarios
Mohammed Alhamdan
Mohammed Alhamdan el 27 de Dic. de 2022
Editada: Mohammed Alhamdan el 27 de Dic. de 2022
Thank you this helped. I used it to write the following and it worked
clc;
close all;
clear;
workspace;
format long g;
format compact;
fontSize = 20;
fileList = dir('*0001.txt')
numFiles = numel(fileList)
for k = 1 : numFiles
FileName = sprintf('%s', fileList(k).name)
A = load(FileName);
figure;
title(FileName);
xlabel('Time delay (ps)')
ylabel('delta T/ T (arb .unit)')
hold on
plot (A(:,1),A(:,2), 'LineWidth',1, 'Color', [0 0.4470 0.7410])
plot (A(:,1),A(:,3), 'LineWidth',1, 'Color', [0.6350 0.0780 0.1840])
print(gcf, fileList(k).name+".png");
end
now my only problem is with [ title(FileName) ]. My files names contain underscores ( _ ) instead of spaces (for example: Data_22-12-23_1534_0001.txt), and this create small letter after each underscore on the title on my figure. is there a solution for it?
screenshot of title on figure:
Image Analyst
Image Analyst el 27 de Dic. de 2022
Use the 'Interpreter' 'none' option
title(FileName, 'Interpreter', 'none', 'FontSize', 20);

Iniciar sesión para comentar.

Más respuestas (0)

Community Treasure Hunt

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

Start Hunting!

Translated by