saving Plots in a loop
2 views (last 30 days)
Show older comments
Hi Am trying to plot a 132 files .. the problem when I use contour plot I got the error "Error using saveas (line 58) Invalid handle." Where this error is not appearing when I use surf / mesh or any other plot? Can you help ?
Path = '........./Trialwithname/Figures';
for i = 1:132
c1 = [D{i}];
a1 = table2array(c1);
c2 = reshape(a1,99,99);
hplot = surf(x,y,c2);
saveas(hplot,fullfile(Path, sprintf('fig%02d.jpg', i)));
end
0 Comments
Accepted Answer
OCDER
on 1 Aug 2018
The outputs to contour is different from axes handles given by surf. You have to find the figure handle and feed that to the saveas function. Example:
Path = '........./Trialwithname/Figures';
for i = 1:132
c1 = [D{i}];
a1 = table2array(c1);
c2 = reshape(a1,99,99);
if i == 1
[~, hc] = contour(x, y, c2);
haxes = get(hc, 'parent');
hplot = get(haxes, 'parent');
else
contour(haxes, x, y, c2);
end
%hplot = surf(x,y,c2);
saveas(hplot,fullfile(Path, sprintf('fig%02d.jpg', i)));
end
2 Comments
More Answers (0)
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!