cannot extract data from figure with multiple lines
5 次查看(过去 30 天)
显示 更早的评论
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?
0 个评论
采纳的回答
Fangjun Jiang
2022-4-5
编辑:Fangjun Jiang
2022-4-5
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 个评论
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 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Programmatic Model Editing 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!