MATLAB Answers

0

Access to GUI plot data using GUIDE

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 件のコメント

Adam Danz
2019 年 2 月 14 日
What is the value of handles.C? Could you share a sample of that data so we can see it?
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 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.

サインイン to comment.

1 件の回答

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 件のコメント

George Diamond 2019 年 2 月 14 日
I 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.
It still doesn't give me a simple way to save the data that I am looking to save. Decided to take a chance trying save('handles.C'), but it spits out a corrupted file.
Walter Roberson
2019 年 2 月 14 日
C = handles.C;
save('C.mat', 'C');
George Diamond 2019 年 2 月 15 日
Walter, it worked! Thanks so much. Much appreciated.
Adam, thanks too for your help.

サインイン to comment.



Translated by