Cell-Matrix, I can't extract values
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
Paul Rogers
am 10 Jan. 2021
Kommentiert: Star Strider
am 10 Jan. 2021
I have the figure in attached and I need to extract values.
I run this code:
F = openfig('phi_1.fig');
ax = gca;
lines = findobj(ax, 'Type','Line');
for k = 1:numel(lines)
x{1,:} = lines(k).XData;
y{k,:} = lines(k).YData;
end
the problem is that I don't get a vector, but a matrix with other matrix inside and I don't know how to extract the values.
For the x I don't have problems, I type:
time=cell2mat(x);
but for the y I don't know
Akzeptierte Antwort
Star Strider
am 10 Jan. 2021
Change the code slightly to:
F = openfig('phi_1.fig');
ax = gca;
lines = findobj(ax, 'Type','Line');
for k = 1:numel(lines)
x{k} = lines(k).XData; % Force Row Vector
y{k} = lines(k).YData; % Force Row Vector
end
xv = cell2mat(x); % Extract From Cell Array
yv = cell2mat(y); % Extract From Cell Array
[xvs,idx] = sort(xv); % Sort Ascending
yvs = yv(idx); % Sort According To ‘xvs’
figure
plot(xvs, yvs)
grid
That should do what you want.
3 Kommentare
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Get Started with MATLAB 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!