How to open multiple fig files at once through code?

%I need to open multiple files from a directory. I tried using the following code:
[figures, pathname,]=uigetfile('directory','*.fig','Multiselect','on');
for x = 1:length(figures)
Multi_Figs = figures(x).name;
Op = openfig(Multi_Figs);
end
It gave an error,
Error in Multi_Figs = figures(x).name; : Struct contents reference from a non-struct array object.
I tried removing " .name " from it and modified the code as:
[figures, pathname,]=uigetfile('directory','*.fig','Multiselect','on');
for x = 1:length(figures)
Multi_Figs = figures(x);
Op = openfig(Multi_Figs);
end
After running the code it gave another error;
Error in Op = openfig(Multi_Figs); : The value of 'Filename' is invalid. It must satisfy the function: ischar.
I converted the figure names to char by ch=char(figures) and using 'ch' in place of 'figures' in the code. But it also did not work out.
Kindly help me with opening multiple fig files at once.

回答(1 个)

[figures, pathname,]=uigetfile('directory','*.fig','Multiselect','on');
for x = 1:length(figures)
Multi_Figs = [pathname,filesep,figures{x}];
Op = openfig(Multi_Figs);
end

5 个评论

I tried using this before as well but it did not work out. It displays the error in Op = openfig(Multi_Figs); Also it says,
Error using load
Unable to read file 'filename.fig'. No such file or directory.
Even though it is displaying all figure names in the figures variable.
Are figures present in the folder?
Yes figures are present. When I run the code and it asks to select files as I have used uigetfile , I select mulitple figures from my directory and it displays all the names in the figures variable but doesn't open the figures.
Any other thing I am missing out?
Edited the code....try now....

请先登录,再进行评论。

类别

帮助中心File Exchange 中查找有关 Environment and Settings 的更多信息

评论:

2018-5-31

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by