필터 지우기
필터 지우기

save figure as .mat to a different folder

조회 수: 32 (최근 30일)
Vincent I
Vincent I 2013년 8월 8일
Hi, I would like to save a figure as a mat file to a different folder other then the current folder. Simpfied code:
str = sort(get(findobj(0,'Type','figure'),'name'));
[s,v] = listdlg('PromptString','Select a file:',...
'SelectionMode','single',...
'ListString',str);
fig = handle2struct(figure(s));
save('Path to the folder',fig)
I've tried save(['Path'],fig) etc but nothing worked
Thank you
  댓글 수: 1
Jan
Jan 2013년 8월 8일
Instead of the vague "nothing works" it is better to explain what happened instead. Most of all the error message would reveal the problems.

댓글을 달려면 로그인하십시오.

채택된 답변

Jan
Jan 2013년 8월 8일
편집: Jan 2013년 8월 8일
save('Path to the folder', 'fig')
The fig must be enclosed in quotes.
This is a frequently occurring problem, see Answers: Magic Strings, SAVE is not magic
Btw, FIG files have MAT format also, so you can store the FIG file by saveas and import it as struct by:
S = load('YourFile.fig', '-mat');

추가 답변 (1개)

Vincent I
Vincent I 2013년 8월 12일
is there a way to save the figure and the workspace at a predetermined location using the folowing code?
fig = handle2struct(figure(s));
Dir = strcat('D:\Documents and Settings\...\Save\',folder,'.mat');
assignin('base','SavedFig',fig)
evalin('base', 'save(''Dir'')')
right now the ws is saved in the current folder and not in the Dir folder. Thank you
  댓글 수: 1
Vincent I
Vincent I 2013년 8월 12일
NVM i got it:
location='c:\afefefedf';
evalin('base', ['save(''', location ''')']);

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 File Operations에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by