How do you save for loop plots to the correct directory?

3 次查看(过去 30 天)
%Hello, this is very simple code but I am completey new to MatLab. Help!
points = [1:3]
points = 1×3
1 2 3
color = ["r", "g", "b", "m", "b"];
% Create a string variable that contains the name of the directory you
% created where you will writeout the plots
Outputfigures ='C:\Users\sfai\Documents\MATLAB\OutputFigures'; %I am not sure if this is what is meant by directory;
for i=1:3
h=figure
plot(points,points,color(i))
xlabel('X')
ylabel('Y')
title(strcat({'Figure # '}, num2str(i)))
%saveas(h,sprintf('OutputFigures/FIG%d.png',i));
%^^^This saves the titles with the correct names, but I was
%instructed to use a method that "concatenates strings to create the correct file and folder path"
%saveas(gcf, [strcat('Figure #', num2str(i), '.png')]);
%^^^This saves the titles with the correct names, but it saves
%it to the current folder.
%So what's the best way to save these figures with the correct names and file location?
end
h =
Figure (1) with properties: Number: 1 Name: '' Color: [1 1 1] Position: [671 661 577 433] Units: 'pixels' Show all properties
h =
Figure (2) with properties: Number: 2 Name: '' Color: [1 1 1] Position: [671 661 577 433] Units: 'pixels' Show all properties
h =
Figure (3) with properties: Number: 3 Name: '' Color: [1 1 1] Position: [671 661 577 433] Units: 'pixels' Show all properties

采纳的回答

Shashank Pathrudkar
编辑:Shashank Pathrudkar 2023-2-5
points = [1:3]
color = ["r", "g", "b", "m", "b"];
Outputfigures ='C:\Users\sfai\Documents\MATLAB\OutputFigures\';
for i=1:3
figure
plot(points,points,color(i))
xlabel('X')
ylabel('Y')
title(strcat({'Figure # '}, num2str(i)))
saveas(gcf,strcat(Outputfigures,num2str(i),'.fig')); % saving as a MATLAB figure file
print(gcf,strcat(Outputfigures,num2str(i),'.eps'),'-depsc'); % saving in eps format
print(gcf,strcat(Outputfigures,num2str(i),'.pdf'),'-depsc'); % saving in pdf format
print(gcf,strcat(Outputfigures,num2str(i),'.png'),'-dpng'); % saving as a png
end
  1 个评论
Macy
Macy 2023-2-5
编辑:Macy 2023-2-5
Thank you, I had issues with my string variable of the folder I wanted to save it in, when I did Outputfigures = 'Outputfigures/';, it works!

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Printing and Saving 的更多信息

产品


版本

R2022b

Community Treasure Hunt

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

Start Hunting!

Translated by