Is there a way to plot to a file while in a parfor loop?

30 Ansichten (letzte 30 Tage)
Mark
Mark am 27 Mär. 2013
Bearbeitet: Mathias am 7 Feb. 2019
Hello,
I have a MATLAB program I'm running in parallel. I understand that I can't use a worker process to plot to the screen. But, I'm curious, is it possible to use a worker process to plot directly to a file?
Thanks,
Mark

Akzeptierte Antwort

Jing
Jing am 28 Mär. 2013
Bearbeitet: Jing am 28 Mär. 2013
You can plot in parfor, it's just you won't see it, but the handle is still there. Then you can use saveas to save it to a file.
parfor i=1:5
figure(i)
plot(rand(i*10,1));
saveas(gcf,['temp' num2str(i) '.jpg']);
end
  3 Kommentare
Yaswanth  Sai
Yaswanth Sai am 11 Jan. 2018
Exactly! Thanks again.
Mathias
Mathias am 7 Feb. 2019
Bearbeitet: Mathias am 7 Feb. 2019
I tried the code, but got the following error:
% Error using validate (line 162)
% Printing of uicontrols is not supported on this platform.
%
% Error in print (line 67)
% pj = validate( pj );
%
% Error in saveas (line 181)
% print( h, name, ['-d' dev{i}] )
%
% Error in Untitled (line 1)
% parfor i=1:5
Using Matlab 2017b. Any solution for this?
Thanks in Advance
Edit: Found another examle of this with figure() instead of figure(var). Thats the solution.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Graphics Performance 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