Loading a fig file without opening

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!

 Respuesta aceptada

Fangjun Jiang
Fangjun Jiang el 8 de Feb. de 2021
Editada: Fangjun Jiang el 8 de Feb. de 2021
f=openfig('power.fig','invisible')
a=get(f,'Children')
...
close(f)
clear f

3 comentarios

JPS
JPS el 11 de Feb. de 2021
Thank You Mr. Fangjun Jiang !
Noemie Danne
Noemie Danne el 28 de Feb. de 2022
The figure still pop up quickly before closing.
How can I prevent this?
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

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Creating, Deleting, and Querying Graphics Objects en Centro de ayuda y File Exchange.

Productos

Etiquetas

Preguntada:

JPS
el 8 de Feb. de 2021

Comentada:

el 13 de Mayo de 2022

Community Treasure Hunt

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

Start Hunting!

Translated by