Załóżmy, że mam kilka figurek otwartych w programie Matlab. Chciałbym mieć jakąś funkcję, którą mogę wywołać, np. save_all_figures_to_directory('dir_name')
, która będzie iterować po wszystkich figurach i zapisywać je w określonym folderze. Jak mam to zrobic?Skrypt do zapisywania figur matlab do określonego katalogu
9
A
Odpowiedz
11
Można użyć funkcji Matlab findobj
:
function save_all_figures_to_directory(dir_name)
figlist=findobj('type','figure');
for i=1:numel(figlist)
saveas(figlist(i),fullfile(dir_name,['figure' num2str(figlist(i)) '.fig']));
end
end
+1
Podoba mi się ta mała funkcja - działa dobrze. Bardzo bym chciał, aby postać "Właściwość nazwy" miała postać "nazwa" .fig. Możesz łatwo ustawić właściwość name za pomocą podobnego polecenia: 'figure ('Name', 'ah3187w2070degspec1', 'NumberTitle', 'off', 'Color', [1 1 1])' Pamiętaj, że również wyłączam numer w tytule, a także ustawić kolor tła w tym kodzie. – AllenH
bardzo podobne pytanie: [Jak mogę dostać uchwyty wszystkich otwartych figur w MATLAB] (http://stackoverflow.com/questions/4540604/how -do-i-get-the-handles-of-wszystkich-open-figure-in-matlab) – Amro