cannot extract data from figure with multiple lines

Hello,
I have a matlab figure with muliple lines in it that I am trying to extact. However I can only get the figure line. I am not sure what is wrong. I created the figures in simulink
I am using the following code
fig = openfig('traj.fig');
h = findobj(gca,'Type','line');
y_no_humanX = get(h,'Xdata') ;
y_no_humanY = get(h,'Ydata') ;
close(fig);
when I try to extract the data I only get the first line and cannot get the other lines. I am not sure what is going on.
Any ideas?

 採用された回答

Fangjun Jiang
Fangjun Jiang 2022 年 4 月 5 日
編集済み: Fangjun Jiang 2022 年 4 月 5 日

0 投票

The other two "curves" are created using stairs(). use findobj(fig,'Type','Stair') to find those.
fig = openfig('traj.fig');
>> findobj(fig)
ans =
12×1 graphics array:
Figure (ScopePrintToFigure)
UIContainer (PrintLayoutGridContainer)
UIContainer (PrintContainer)
Panel (DisplayPanel1)
Legend (ref, Subsystem/1, Subsystem/3)
Axes (DisplayAxes1_RealMag)
Stair (DisplayLine2)
Stair (DisplayLine1)
Line (DisplayLine1)
Transform
Transform
Transform

4 件のコメント

Nathaniel Goldfarb
Nathaniel Goldfarb 2022 年 4 月 5 日
I tried on both the "fig" object and on the path to the figure.
when I try it on the fig object i get an error
when I try it on the path it just prints out the numbers 1-99
Fangjun Jiang
Fangjun Jiang 2022 年 4 月 5 日
see updated answer
Nathaniel Goldfarb
Nathaniel Goldfarb 2022 年 4 月 5 日
Thankyou, this helped a lot. I was able to change the line type from "stair" to "line" and resave the figure.
I was then able to read in the data using my other code. I am sure there is a better way but I only need to do this for two figures so its not that big a deal.
Fangjun Jiang
Fangjun Jiang 2022 年 4 月 6 日
If you have access to the Simulink model and simulation, you could save those data directly using the "To Workspace" block.

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

ヘルプ センター および File ExchangeCreating, Deleting, and Querying Graphics Objects についてさらに検索

製品

リリース

R2021a

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by