hist within a parfor creates transparency violation error?

5 visualizaciones (últimos 30 días)
Cheng Jia
Cheng Jia el 1 de Mzo. de 2018
Editada: Edric Ellis el 2 de Mzo. de 2018
This code creates a transparency violation error. Is this by design??
s = cell(2,1);
s{1} = randn(100);
s{2} = randn(100);
parfor i=1:2
figure(i);
y = s{i};
hist(y);
end

Respuesta aceptada

Edric Ellis
Edric Ellis el 2 de Mzo. de 2018
Editada: Edric Ellis el 2 de Mzo. de 2018
hist internally uses inputname to support additional functionality in the resulting plot. Unfortunately, using inputname in a function called from parfor results in the transparency violation error you're seeing. You can work around this by ensuring that the input to hist doesn't have a name (i.e. it's a temporary):
parfor i=1:2
figure(i);
y = s{i};
hist(1 .* y);
% hist(s{i}) also works
end

Más respuestas (0)

Categorías

Más información sobre Develop Apps Using App Designer en Help Center y File Exchange.

Productos

Community Treasure Hunt

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

Start Hunting!

Translated by