2011-10-25 9 views
9

Supponiamo di avere diverse figure aperte in MATLAB. Vorrei una funzione che posso chiamare, ad esempio save_all_figures_to_directory('dir_name'), che dovrebbe scorrere tutte le figure e salvarle nella cartella specificata. Come faccio a fare questo?Script per salvare le cifre MATLAB in una directory specificata

+2

domanda molto simile: [Come faccio ad avere le maniglie di tutte le figure aperte in MATLAB] (http://stackoverflow.com/questions/4540604/how -do-i-get-the-maniglie-di-tutte-figure-aperte-in-matlab) – Amro

risposta

11

È possibile utilizzare la funzione di 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

Mi piace questa piccola funzione, funziona bene. Mi piacerebbe che prendesse la proprietà Name come figura "nome" .fig. È possibile impostare facilmente la proprietà name con un comando simile: 'figure ('Name', 'ah3187w2070degspec1', 'NumberTitle', 'off', 'Color', [1 1 1])' Nota che spengo anche il numero nel titolo e imposta il colore di sfondo della figura in quel codice. – AllenH

Problemi correlati