savefig — Save one or more figures as RunMat FIG files.
savefig writes RunMat FIG files that can be reopened by openfig and hgload.
Syntax
ok = savefig(filename)
ok = savefig(fig, filename)
ok = savefig(fig, filename, version)Inputs
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
args | Any | Variadic | — | MATLAB-compatible figure persistence arguments. |
Returns
| Name | Type | Description |
|---|---|---|
ok | LogicalArray | True when the save operation completed. |
Errors
| Identifier | When | Message |
|---|---|---|
RunMat:figurePersistence:InvalidArgument | Arguments are missing, malformed, or incompatible with the requested figure persistence operation. | figure persistence: invalid argument |
RunMat:figurePersistence:UnsupportedFormat | The requested save/load format is recognized but not supported by RunMat's active plotting exporter. | figure persistence: unsupported format |
RunMat:figurePersistence:IoFailure | The target file cannot be read, written, flushed, synced, or atomically replaced. | figure persistence: file I/O failed |
RunMat:figurePersistence:RenderFailed | The plotting renderer or scene exporter cannot serialize the requested figure. | figure persistence: export failed |
RunMat:figurePersistence:ImportFailed | The figure file is missing, corrupt, unsupported, or incompatible with RunMat's scene importer. | figure persistence: import failed |
RunMat:figurePersistence:Internal | Internal runtime control-flow or conversion fails. | figure persistence: internal operation failed |
How savefig works
savefig(filename)saves the current figure and appends.figwhen no extension is present.savefig(fig, filename)accepts a scalar figure handle or an array of figure handles.savefig(fig, filename, version)accepts MATLAB version tokens-v6,-v7,-v7.3, andcompactas compatibility options for the RunMat FIG scene format.- Non-
.figextensions are rejected forsavefig.
Does RunMat run savefig on the GPU?
No numeric GPU kernel is launched.
The figure scene exporter preserves existing plotting state without routing through scalar plotting loops.
GPU memory and residency
savefig writes host or virtual-filesystem bytes and returns a host logical status.
Example
Save and reopen the current figure
plot(1:4, [1 3 2 4]);
savefig("session_plot.fig");
fig = openfig("session_plot.fig");Using savefig with coding agents
Open a RunMat example with live inputs, then ask the agent to explain how savefig changes the result.
Run a small savefig example, explain the result, then change one input and compare the output.
Related Plotting functions
2D Charts
area · bar · errorbar · heatmap · hist · histogram · loglog · pie · plot · scatter · semilogx · semilogy · stairs · stem
Other
addpoints · ancestor · animatedline · axes · barh · cla · clf · colorcube · colororder · copyobj · daspect · datacursormode · dataTipTextRow · fcontour · figure · fill3 · findobj · fsurf · gobjects · groot · hgload · hgsave · hidden · histogram2 · hold · line · linkaxes · openfig · opengl · pan · parula · patch · plotmatrix · plotyy · polarhistogram · polarplot · polarscatter · print · quiver3 · ribbon · saveas · sphere · stackedplot · subtitle · suptitle · textscatter · textscatter3 · triplot · waitbar · wordcloud · xline · xscale · xtickangle · xtickformat · xticklabels · xticks · yline · yscale · ytickangle · ytickformat · yticklabels · yticks · zoom
Open-source implementation
Unlike proprietary runtimes, every RunMat function is open-source. Read exactly how savefig is executed, line by line, in Rust.
- View the source for savefig in Rust on GitHub
- Learn how the RunMat runtime works
- Found a bug? Open an issue with a minimal reproduction.
About RunMat
RunMat is an open-source runtime that executes MATLAB-syntax code blazing on any GPU. It is licensed under the Apache 2.0 license.
- RunMat automatically optimizes your math for GPU execution on Apple, Nvidia, and AMD hardware. No code changes needed. Simulations that took hours now take minutes.
- Start running code in seconds. RunMat runs in the browser, on the desktop, or from the CLI. No license server, no IT ticket.