Filter löschen
Filter löschen

Extracting x,y data from a folder of figures

1 Ansicht (letzte 30 Tage)
Cheggers
Cheggers am 10 Aug. 2021
Kommentiert: Rik am 10 Aug. 2021
I currently have code which extracts the x,y data from a set of figues into a cell of arrays of the data. This is what i want to have happen however there are two problems. One is that the code requires the figue to flash up and be closed to get the data. I tired to use the load function but had no luck. The other problem is that i currently pick the figures i want data from by making sure they end with the same letters. I ideally would like it so that the code starts with something like 'figures=uigetdir('C:\user\......') where i could navigate to a folder containing all the .fig files i want and load them.
Any help would be appreciated.
dinfo = dir('*mono.fig');
fignames = {dinfo.name};
numfig = length(fignames);
y = cell(numfig, 1);
z = cell(numfig, 1);
for K = 1 : numfig
figfile = fignames{K};
try
fig = openfig(figfile);
ax = get(fig, 'CurrentAxes');
if ~isempty(ax)
hline = get(ax, 'Children');
y{K} = get(hline,'XData');
z{K} = get(hline,'YData');
end
close(fig);
end
end

Akzeptierte Antwort

Rik
Rik am 10 Aug. 2021
You can set the visibilty to off when loading the figure:
fig = openfig(figfile,'invisible');
That should take care of the flashing.
And what is your problem using uigetdir? The result will either be emtpy (in case the user closes the picker), or will contain a path you can use as input to dir (don't forget to add '*.fig').
  4 Kommentare
Cheggers
Cheggers am 10 Aug. 2021
Ahh i understand now. Thank you very much
Rik
Rik am 10 Aug. 2021
No problem, you're welcome.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Environment and Settings finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by