Hi everyone, I do not understand what I'am doing woring in saving my plot.
My code:
Temp=[num2str(vaiable), 'Myplotnumber' ,num2str(n) ,'-dpng'];
saveas(gcf,Temp);
it save the figure always with Var1Myplotnumber2.png.fig
why put matlab .fig at the end?
Thank you?

댓글 수: 3

Ive J
Ive J 2020년 12월 20일
Use print.
doc print
CSCh
CSCh 2020년 12월 20일
If I use print(gca, Temp)
I got:
Error using alternatePrintPath
Invalid or unsupported printer '' specified.
Error in print (line 83)
pj = alternatePrintPath(pj);
Ive J
Ive J 2020년 12월 20일
Pass gcf and not axes
print(gcf, 'test', '-dpng', '-r400')

댓글을 달려면 로그인하십시오.

 채택된 답변

CSCh
CSCh 2021년 1월 4일

0 개 추천

Thank you all so much for your help. In my case the '-dpng' ending did not work.
if I change to:
Temp=['%MyName%' ,'.png'];
saveas(gcf, Temp)
it saves png format.
BR

추가 답변 (3개)

Image Analyst
Image Analyst 2020년 12월 20일

0 개 추천

Use exportgraphics() instead if you have R2020a or later.

댓글 수: 7

CSCh
CSCh 2020년 12월 20일
If I use
exportgraphics(f,Temp)
i got this error
Error using exportgraphics
When exporting to file specify both a file name and extension.
Hoewever Temp = "Var1Myplotnumber2.png" is working in the command line.
If I use:
hgexport it works without error, but I got:
Var1Myplotnumber2.png.eps
CSCh
CSCh 2020년 12월 20일
With f= figure(1)
How about if you do this:
g = gcf; % Or gca, whatever you want.
exportgraphics(g, Temp);
CSCh
CSCh 2020년 12월 20일
Got the same error message
Try this code in a simple script or in the command window.
plot(1:11, 'b-', 'LineWidth', 2);
fullFileName = fullfile(pwd, 'Delete me.png');
exportgraphics(gcf, fullFileName);
Does it create the file? For me it does.
CSCh
CSCh 2020년 12월 21일
Yes that works for me, but why does not my code work? Maybe something with my loop (num2str (n)), I have to check..
Image Analyst
Image Analyst 2020년 12월 21일
I don't know. You never showed me your exportgraphics() code that didn't work. You only showed it where it worked in the command window with a hard-coded filename string. Please post the non-working code from your m-file. Apparently it thinks your Temp did not have an extension on it. Are you sure Temp ends in '.png'?

댓글을 달려면 로그인하십시오.

Walter Roberson
Walter Roberson 2020년 12월 21일

0 개 추천

Temp = {sprintf('%dMyplotnumber%d.png', vaiable, n),'-dpng'};
saveas(gcf, Temp{:})
Image Analyst
Image Analyst 2021년 1월 5일

0 개 추천

You can do
baseFileName = sprintf('%d Myplotnumber %d.png', variable, n); % Name without folder.
fullFileName = fullfile(yourFolder, baseFileName); % Prepend folder.
saveas(gcf, fullFileName);

카테고리

도움말 센터File Exchange에서 Environment and Settings에 대해 자세히 알아보기

제품

릴리스

R2020a

태그

질문:

2020년 12월 20일

답변:

2021년 1월 5일

Community Treasure Hunt

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

Start Hunting!

Translated by