How to save figures from foor loop in separate folders
조회 수: 1 (최근 30일)
이전 댓글 표시
Hello everyone,
i was wondering how can i save the graphics from every foor loop in a different folder named after the file that is running?
here is my code, where i just save them in the directory. But i want matlab to make separate folders where the figures from every run are saved (there are 4 figures per file, and around 5 files per loop)
saveas (h1, sprintf('Experimental_drying_rates_%d.png', i));
saveas (h2, sprintf('Calculated_drying_rates_%d.png',i));
saveas (h3, sprintf('Compariso_experimental_and_calculated_rates_%d.png',i));
saveas (h4, sprintf('Various_drying-air_flowrates_%d.png', i));
thank you in advance!
댓글 수: 0
채택된 답변
Bjorn Gustavsson
2019년 9월 16일
Generate your file-names with fullfile (that way you can have multiple directories in a cell-array, one for each of your wanted target dirs):
dirs = {'a','b','c'};
runs = {'Q','W','E','R','T'};
for i1 = 1:numel(runs),
filename1 = [fullfile(dirs{1},runs{i1}),'.png'];
filename2 = [fullfile(dirs{2},runs{i1}),'.png'];
filename3 = [fullfile(dirs{3},runs{i1}),'.png'];
disp(filename1)
disp(filename2)
disp(filename3)
end
HTH
댓글 수: 2
Bjorn Gustavsson
2019년 9월 16일
Then I'd save all figures from one run in a run-specific directory, perhaps something like:
runs = {'Q','W','E','R','T'};
files_all_runs = {{'a','b'},{'a'},{'a','b','c','d'},{'a','d'},{'b'}};
for i1 = 1:numel(runs),
for i2 = 1:numel(files_all_runs{i1})
filename1 = [fullfile(runs{1},[runs{i1},'-',files_all_runs{i1}{i2}]),'.png'];
disp(filename1)
end
end
If you somehow autogenerate the files you want from each run you have to do a bit more careful handling of the filenames, but the pattern should be reasonable similar.
HTH
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Printing and Saving에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!