save output of a code within the code?

4 次查看(过去 30 天)
Hi,
I am using a script to generate a plot/figure based on a numbers in text file. I am able to generate the figure, however, I would like to include a command at the end of the script for this output to be saved with the name "figure" in the same directory that the input was taken from. Any simple way to do this? (note--The input will be selected by hand every time via "spm_select").
The code is below:
rp = spm_load(spm_select);
figure;
subplot(2,1,1);plot(rp(:,1:3));
set(gca,'xlim',[0 size(rp,1)+1]);
subplot(2,1,2);plot(rp(:,4:6));
set(gca,'xlim',[0 size(rp,1)+1]);
Thanks!
Victoria

采纳的回答

David Sanchez
David Sanchez 2013-10-11
First, add a handle to the figure, then, use saveas:
rp = spm_load(spm_select);
h = figure;
subplot(2,1,1);plot(rp(:,1:3));
set(gca,'xlim',[0 size(rp,1)+1]);
subplot(2,1,2);plot(rp(:,4:6));
set(gca,'xlim',[0 size(rp,1)+1]);
my_saving_dir = 'C:\whatever'; % this is the folder to save to
my_file_name = 'file_name.fig'; % feel free to choose another extension
saving_name = strcat(my_saving_dir,my_file_name);
saveas(h,saving_name)
  1 个评论
Victoria Klimaj
Victoria Klimaj 2013-10-13
Thank you! That was very helpful and worked perfectly. Unfortunately now I am having trouble using this within a for-loop to handle multiple subjects at once--for some reason Matlab doesn't like the "saveas" within a loop, or the figure commands--but am much closer now.

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Characters and Strings 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by