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

2 vues (au cours des 30 derniers jours)
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?

Réponse acceptée

Codeshadow
Codeshadow le 1 Juin 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

Plus de réponses (1)

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

Catégories

En savoir plus sur Printing and Saving dans Help Center et File Exchange

Tags

Produits


Version

R2020a

Community Treasure Hunt

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

Start Hunting!

Translated by