How to save contourf data and not plot it for running efficiency?

5 views (last 30 days)
I have prepared data for finding a contour line on the contour map. However, I have to run thousands of simulations and most of the computation is used in opening and closing the figure. Is there a way that I can just save the contourf into the variable 'c' and not plot it.I am attaching the screenshot for your reference
I have attached the grid files in 'grid_data.mat' but it does not load in the online version. The code for my approach to plotting is given below:
load('grid_data.mat')
[c] = contourf(x1nan,y1nan,uanan,[33.33 33.33], 'ShowText','on',FaceAlpha=0.1,EdgeAlpha=0.8,EdgeColor='k',LevelStep=20);
I cannot get to load the file in this code, but I have attached it. Please let me know what i am doing wrong Than you in advance.
  1 Comment
Star Strider
Star Strider on 13 Dec 2024
Answers is having problems with uploaded files.
I first noticed this two days ago and MathWorks knows about it. Apparently, it has not been fixed yet. (For whatever reason, we don’t have permission to access the uploaded files. Here, it mentiions that the file cannot be found. Using the websave function reveals that the file exists, however access to it is ‘Forbidden’, according to the error that is thrown when attempting that.)
file = websave('grid_data.mat','https://www.mathworks.com/matlabcentral/answers/uploaded_files/1820915/grid_data.mat')
Error using websave (line 107)
The server returned the status 403 with message "Forbidden" in response to the request to URL https://www.mathworks.com/matlabcentral/answers/uploaded_files/1820915/grid_data.mat.
MathWorks has been doing site maintenance recently. That apparently broke this capabiity (and a number of others).
.

Sign in to comment.

Accepted Answer

Star Strider
Star Strider on 13 Dec 2024
Edited: Star Strider on 13 Dec 2024
Use gcf to return the figure handle, then set the visibility to 'off'.
Example —
[X,Y,Z] = peaks(50);
figure
[c,hc] = contourf(X,Y,Z, ShowText='on');
colormap(turbo)
colorbar
c % Contour Information
c = 2×522
-6.0000 0.3668 0.3061 0.1837 0.0612 0.0371 -0.0122 0.0454 0.0612 0.1837 0.3061 0.4286 0.4542 0.4637 0.4286 0.3668 -4.0000 0.5579 0.5510 0.4286 0.3061 0.1837 0.0612 -0.0612 -0.1837 -0.1965 -0.3061 -0.3114 -0.3526 -0.3421 15.0000 -1.7755 -1.8073 -1.8255 -1.7931 -1.7755 -1.6531 -1.5306 -1.5173 -1.4524 -1.4377 -1.5001 -1.5306 -1.6531 -1.7126 -1.7755 35.0000 -2.0204 -2.0250 -2.0839 -2.1178 -2.1304 -2.1221 -2.0907 -2.0297 -2.0204 -1.9054 -1.8980 -1.7755 -1.6531
<mw-icon class=""></mw-icon>
<mw-icon class=""></mw-icon>
figure
[c,hc] = contourf(X,Y,Z);
c % Contour Information
c = 2×522
-6.0000 0.3668 0.3061 0.1837 0.0612 0.0371 -0.0122 0.0454 0.0612 0.1837 0.3061 0.4286 0.4542 0.4637 0.4286 0.3668 -4.0000 0.5579 0.5510 0.4286 0.3061 0.1837 0.0612 -0.0612 -0.1837 -0.1965 -0.3061 -0.3114 -0.3526 -0.3421 15.0000 -1.7755 -1.8073 -1.8255 -1.7931 -1.7755 -1.6531 -1.5306 -1.5173 -1.4524 -1.4377 -1.5001 -1.5306 -1.6531 -1.7126 -1.7755 35.0000 -2.0204 -2.0250 -2.0839 -2.1178 -2.1304 -2.1221 -2.0907 -2.0297 -2.0204 -1.9054 -1.8980 -1.7755 -1.6531
<mw-icon class=""></mw-icon>
<mw-icon class=""></mw-icon>
Ax = gcf;
Ax.Visible = 'off'; % Figure Not Displayed
See the documentatiion section on Visible for details.
EDIT — Added second documentation reference (Visible).
.
  4 Comments
Muha
Muha on 14 Dec 2024
Edited: Muha on 14 Dec 2024
As always. Thank you very much for your detailed answer. For now I will improve the speed of analysis by turning off the visibility. I will still keep looking for alternatives. If I find one, I will update here.
Thanks a bunch.
ps. I have opened a figure at the start of the loop. Probably it will save some more time in not opening and closing the figure.
Star Strider
Star Strider on 14 Dec 2024
As always, my pleasure!
If you siimply want to over-write the figure in the next iterration, there is no need to close it first. Over-wertinng it will do essentially the same operation.

Sign in to comment.

More Answers (0)

Products


Release

R2024a

Community Treasure Hunt

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

Start Hunting!