Access to GUI plot data using GUIDE

조회 수: 5 (최근 30일)
George Diamond
George Diamond 2019년 2월 14일
댓글: George Diamond 2019년 2월 15일
Hi guys,
I'm creating my very first GUI using GUIDE for a DAQ application. I am able to pull the data sets from the instrument, place them in different handles and plot each or all of them using different push buttons.
However, I would like to be able to place the acquired data passed to handles that was plotted into an array to eventually write it to an excel worksheet. I have the function for the "Save Data" button at the end of the program. I have tried a few options to save the array, but my program stores the entire sturcture and I get an error code when trying to load it. Error message: Warning: Unable to load .NET object. Saving (serializing) .NET objects into a MAT-file is not supported.
I am open to suggestions.
Thanks so much.
  댓글 수: 5
Walter Roberson
Walter Roberson 2019년 2월 14일
handles.C does not appear to be a graphics object so you should not get() it.
You might be accidentally doing get(0) and 0 is the graphics root object .
George Diamond
George Diamond 2019년 2월 14일
편집: George Diamond 2019년 2월 14일
Thanks Adam and Walter.
I've modified the code. I no long try to get "C" or "handles.C." I fould that I can just use "Save('C')" and it saves "C.mat" to the current folder.
Using save('C.mat'), I can save C to the current folder. I then have to load it to get it to the workspace which creates the warning message:
" Warning: While loading an object of class 'ActionData':
Cannot access method 'ActionData' in class 'matlab.ui.eventdata.ActionData'. "
However, it saves it to the workspace. Please see the attached images for more context.
Thanks again.
(1) Loaded using "Save" mentioned above
(2) load('C.mat')
(3) Open handles
(4) The data I would like to easily obtain using the save button
Thanks.

댓글을 달려면 로그인하십시오.

채택된 답변

Walter Roberson
Walter Roberson 2019년 2월 14일
handles.C is not a graphics object so you should not get() it. You should just use the contents directly.
You might be accidentally doing get(0) and 0 is the graphics root object . Or you might accidentally be getting some other object, just by chance.
  댓글 수: 3
Walter Roberson
Walter Roberson 2019년 2월 14일
C = handles.C;
save('C.mat', 'C');
George Diamond
George Diamond 2019년 2월 15일
Walter, it worked! Thanks so much. Much appreciated.
Adam, thanks too for your help.

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Graphics Object Programming에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by