Adding parameter to file name string when saving a figure using savefig or figsave
Show older comments
I am trying to save a figuer using figsave or savefig, with both string parameter and string. But nothing works.
CHANNEL=1;
dt = datestr(now,'yymmdd_HHMMSS');
filename = sprintf("C15_rhs_CalADC_ch%i_%s",CHANNEL,dt);
figsave(gcf,filename,'ac');
saveas(gcf,filename,'ac');
I need line 4 or line 5 to work to save the figuer as : C15_rhs_CalADC_ch6_220919_121449_ac
Accepted Answer
More Answers (2)
CHANNEL=1;
dt = datestr(now,'yymmdd_HHMMSS');
% filename = sprintf("C15_rhs_CalADC_ch%i_%s_ac",CHANNEL,dt); % with ac
% plot(randn(6,1))
% %figsave(gcf,filename,'png'); % figsave is a customized function?
% saveas(gcf,filename,'png') % use file type matlab recognizes
filename = sprintf("C15_rhs_CalADC_ch%i_%s",CHANNEL,dt); % with ac
plot(randn(6,1))
%figsave(gcf,filename,'png'); % figsave is a customized function?
saveas(gcf,filename+"_ac",'png') % use file type matlab recognizes
ls % the file is saved
5 Comments
Bakr Abdelgaliel
on 19 Sep 2022
Chunru
on 19 Sep 2022
See the update.
Bakr Abdelgaliel
on 19 Sep 2022
Rik
on 19 Sep 2022
Presumably 'ac', 'dc', etc are stored in a variable. Why don't you put the variable name in there?
SomeVariable='ac';
filename = sprintf("C15_rhs_CalADC_ch%i_%s_%s",CHANNEL,dt,SomeVariable);
Bakr Abdelgaliel
on 20 Sep 2022
Do you mean savefig? See below fo a method to create the filename as you indicate and a demo to save and open the figure.
CHANNEL = 1;
dt = datestr(now,'yymmdd_HHMMSS');
% concatenate the different strings, use _ as delimiter
filename = join( ["C15_rhs_CalADC_ch",num2str(CHANNEL),dt,"ac"] , "_" )
figure
plot(rand(20,1))
axis equal
grid on
% save the figure
savefig(gcf, filename)
% try to open the figure
openfig(filename)
1 Comment
Bakr Abdelgaliel
on 19 Sep 2022
Categories
Find more on Printing and Saving in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
