Loading a fig file without opening

119 views (last 30 days)
JPS
JPS on 8 Feb 2021
Commented: Gabriele Bellomia on 13 May 2022 at 6:07
Hi,
I have .fig in the current directory and wish to extract data from it. I used the following code for this purpose,
open('power.fig');
a = get(gca,'Children');
xdata = get(a, 'XData');
ydata = get(a, 'YData');
The code works. My problem is it also opens the fig file in a separate figure window. I don't want that to happen. I just want to extract the data.
Ofcourse I could use,
close figure
But it just takes out the graph and shows an empty figure window.
I would be very much grateful if somebody could help me in this.
Thanks in advance!

Accepted Answer

Fangjun Jiang
Fangjun Jiang on 8 Feb 2021
Edited: Fangjun Jiang on 8 Feb 2021
f=openfig('power.fig','invisible')
a=get(f,'Children')
...
close(f)
clear f
  3 Comments
Gabriele Bellomia
Gabriele Bellomia on 13 May 2022 at 6:07
Try this:
>> load test.fig -mat hgS_070000
>> hgS_070000
hgS_070000 =
struct with fields:
type: 'figure'
handle: 1
properties: [1×1 struct]
children: [1×1 struct]
special: []
It should work, I just tested it on R2020b Update 7 and it does.
But beware that is undocumented (and probably unintended) behavior. So it might change suddenly.
More info here: https://undocumentedmatlab.com/articles/fig-files-format

Sign in to comment.

More Answers (0)

Tags

Products

Community Treasure Hunt

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

Start Hunting!

Translated by