MATLAB: Extracting Data from Scope saved as figure, FIG file

accessdataextractfigfiguresavescopesimulink

How do I extract X,Y data from a Simulink scope I have saved as a figure, FIG file?

Best Answer

1) Open the scope window from with your Simulink model.
2) Select File > Print to Figure. A Figure window will appear.
3) Select File > Save As> Save as a figure, FIG file.
4) Enter the following from the MATLAB Command Window or script
4.a)Open the figure, 'scope_figure', using the function 'openfig':
>> fig = openfig('scope_figure');
4.b) Next open the current axes:
>>ax = fig.CurrentAxes
4.c) Access the Current Axes Children:
>> g_array = ax.Children
4.d) This yields a graphics array containing your data. Access the data by:
>> x1 = g_array(1).XData
>> x1 = g_array(1).YData