Extract time series data from figure

16 visualizaciones (últimos 30 días)
Felix
Felix el 29 de Sept. de 2011
I have certain data only as .fig files but I want to extract the time series (x- and y points) of a particular graph and have them as a normal variable in my workspace for further analysis.
A first step that might be helpful is to open the fig file as a .mat file with load('Example.fig','-mat') The .fig file (see my dropbox link below) contains 4 figures, I am only interested in the upper part of figure 2 (see arrow http://i27.lulzimg.com/92f4285ead.png ). So I suppose the XDATA and YDATA of figure 2 should be somewhere in the second struct file under children --> .... I cannot find it within this complicated structure, and the variable editor doesn't seem to offer a search function. Can you find it?

Respuesta aceptada

Fangjun Jiang
Fangjun Jiang el 29 de Sept. de 2011
Use this example:
f=figure(1);
h=plot(magic(4));
l=findobj(gca,'type','line');
x1=get(l(1),'xdata')
y1=get(l(1),'ydata')
x2=get(l(2),'xdata')
y2=get(l(2),'ydata')
  3 comentarios
Felix
Felix el 29 de Sept. de 2011
So, within the figure window when I go under properties editor and select the line that I want it shows me it's name under "Display Name: ..."
How can I access this object with findobj when I know the display name?
Fangjun Jiang
Fangjun Jiang el 29 de Sept. de 2011
findobj(gca,'type','line','DisplayName',WhateverName).
After running the example code, try get(l(1)) to see all the properties.

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Graphics Object Identification en Help Center y File Exchange.

Productos

Community Treasure Hunt

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

Start Hunting!

Translated by