Saving multiple matlab figures as per their title
25 次查看(过去 30 天)
显示 更早的评论
Hey all,
I am currently using this code to save all the opened Matlab figures. The code saves figures as per numbeR (1,2,3.fig). Instead of numbering, i want to save the files as per title (T100_edot0.01.fig T200_edot0.02.Fig and so on)
FolderName = 'C:\\Bergström\Data_generated_Bergström'; % Your destination folder
FigList = findobj(allchild(0), 'flat', 'Type', 'figure');
for iFig = 1:length(FigList)
FigHandle = FigList(iFig);
FigName = num2str(get(FigHandle, 'Number'));
set(0, 'CurrentFigure', FigHandle);
savefig(fullfile(FolderName, [FigName '.fig']));
end
Many thanks in advance
0 个评论
回答(2 个)
Ameer Hamza
2020-6-10
Figure does not have titles, I guess you want to get the axes title. An alternative to Paresh solution is following using OOP syntax
FolderName = 'C:\\Bergström\Data_generated_Bergström'; % Your destination folder
FigList = findobj(allchild(0), 'flat', 'Type', 'figure');
for iFig = 1:length(FigList)
FigHandle = FigList(iFig);
ax = findobj(FigHandle, 'type', 'axes');
FigName = ax.Title.String;
savefig(FigHandle, fullfile(FolderName, [FigName '.fig'])); % in this case, no need to use set(0, 'CurrentFigure', FigHandle);
end
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Annotations 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!