How can I set the file name as my title name in a subfolder for numerous plots

2 Ansichten (letzte 30 Tage)
Hi,
I am trying to set the title name (that varies depending on the plot) as the file name in a subfolder. I get the error code: Error using sprintf. Function is not defined for 'cell' inputs.
So there is some mistake with my syntax. I have tried different approaches but I don't get it to work. My code is as follows:
figure Timestep=(1:length(d_f_t(:,1)))'; plot(Timestep,W_per_K_serie, '*'); title(['Byggnad', subfolderNames(b)])
folder_path='PathXXX';
saveas(fullfile(folder_path, sprintf('%s.jpg',get(get(gca,'title'),'string'))));
Does anybody have any advice? Thank you in advance
  2 Kommentare
Paolo
Paolo am 23 Mai 2018
Bearbeitet: Paolo am 23 Mai 2018
I tried your code as follows:
figure
title(['Byggnad'])
folder_path='PathXXX';
mkdir(folder_path);
saveas(gca,fullfile(folder_path, sprintf('%s.jpg',get(get(gca,'title'),'string'))));
And it works fine for me. You must specify the handle to the figure when using saveas.
Vlatko Milic
Vlatko Milic am 23 Mai 2018
Hi,
It doesnt't work still unforuntately. My error is now:' Error using saveas. Invalid handle'.
The code looks as follows:
folder_path='XXXXX'; mkdir(folder_path);
tmp = char(get(get(gca,'title'),'string')); saveas(fighandle, fullfile(folder_path, sprintf('%s.jpg', tmp)));
It is noteworthy that my title changes name for every loop I'm performing. However, this should not affect the result? Thank you in advance.

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Stephen23
Stephen23 am 23 Mai 2018
Bearbeitet: Stephen23 am 24 Mai 2018
The title 'String' property may be a cell array, string array, or a char vector. You can easily convert this into a char vector:
tmp = char(get(get(gca,'title'),'string'));
saveas(figH, fullfile(folder_path, sprintf('%s.jpg',tmp)));
I would recommend that you avoid gca, gcf, etc., and always obtain and use explicit graphics handles for all graphics objects that you need to refer to.
  7 Kommentare
Stephen23
Stephen23 am 24 Mai 2018
@Ameer Hamza: thank you for the comment, I fixed the answer.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Vlatko Milic
Vlatko Milic am 23 Mai 2018
Yes, I am calling on the function with plot. I got it to work with gca instead of fighandle. However, some parts of the text in the title got misarranged in the jpg file. That I don't understand. Thank you!

Kategorien

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

Community Treasure Hunt

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

Start Hunting!

Translated by