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

29 visualizaciones (últimos 30 días)
Mark
Mark el 27 de Mzo. de 2013
Editada: Mathias el 7 de Feb. de 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

Respuesta aceptada

Jing
Jing el 28 de Mzo. de 2013
Editada: Jing el 28 de Mzo. de 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 comentarios
Yaswanth  Sai
Yaswanth Sai el 11 de En. de 2018
Exactly! Thanks again.
Mathias
Mathias el 7 de Feb. de 2019
Editada: Mathias el 7 de Feb. de 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.

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Graphics Performance en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by