2011-10-25 33 views
9

Supongamos que tengo varias figuras abiertas en matlab. Me gustaría alguna función a la que pueda llamar, por ejemplo, save_all_figures_to_directory('dir_name'), que itere sobre todas las figuras y las guarde en la carpeta especificada. ¿Cómo hago esto?Secuencia de comandos para guardar las figuras de Matlab en un directorio especificado

+2

pregunta muy similar: [¿Cómo consigo los controladores de todas las figuras abiertas en MATLAB] (http://stackoverflow.com/questions/4540604/how -do-get-the-handles-of-all-open-figures-in-matlab) – Amro

Respuesta

11

Puede utilizar la función de 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

Me gusta esta pequeña función, funciona bien. Me encantaría tomar la propiedad de Nombre de figura como la figura "nombre" .fig. Puede establecer la propiedad del nombre con bastante facilidad con un comando similar: 'figure ('Name', 'ah3187w2070degspec1', 'NumberTitle', 'off', 'Color', [1 1 1])' Tenga en cuenta que también apago el número en el título, así como establecer el color de fondo de la figura en ese código. – AllenH

Cuestiones relacionadas