a function that draws a plot and use an input for the filename of the plot

2 Ansichten (letzte 30 Tage)
To continue,
In my Livescript called test.mlx, I have variables
days
temperatures
I now want to write a function m file that outputs a plot with specification as
plot(days, temperatures)
legend('temperatures')
title('Figure figurenumber. Temperatures')
saveas(gca,'c:\Figure_figurenumber')
Then, what I did is to write a function m file called plot1.m
function plot_test(series1, series2, figurenumber)
plot(series1, series2)
legend('series2')
titlename=['Figure',num2str(figurenumber)]
title(titlename)
end
Then how should one understand the
saveas
part?

Akzeptierte Antwort

Codeshadow
Codeshadow am 1 Jun. 2020
See below for sample code:
close all
% Initialize some data
temperatures = rand(1,30)*35;
plot_test(temperatures, 1);
function plot_test(temperatures, figurenumber)
% Plot data
figure()
plot(temperatures);
legend('temperatures');
% Create title
titlename = ['Figure ' num2str(figurenumber)];
title(titlename);
% Create save location
% Make sure to specify the format of the image you want to save at the end.
% pwd will save your file to the current working directory. If you have a specific save location
% in mind, specify the absolute file path.
fileName = ['Figure_' num2str(figurenumber) '.jpg'];
saveas(gcf, fullfile(pwd, fileName))
end

Weitere Antworten (1)

Codeshadow
Codeshadow am 1 Jun. 2020
You can use a sprintf command in your function as:
saveLocation = sprintf(‘C:\Figure_%d.jpg’, figurenumber);
saveas(gcf, saveLocation)

Kategorien

Mehr zu Printing and Saving finden Sie in Help Center und File Exchange

Tags

Produkte


Version

R2020a

Community Treasure Hunt

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

Start Hunting!

Translated by