How to load a .mat file with a push button, calculate the data using my own functions and plot a figure in a GUI made in GUIDE.

5 visualizaciones (últimos 30 días)
Hi everyone,
I am very new at this with making GUIs. I have a .mat file (consisting of 4 separate variables) that I am uploading using a push button in a GUI and using the code:
function load_file_pushbutton_Callback(hObject, eventdata, handles)
% hObject handle to load_file_pushbutton (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
filename = uigetfile('*.mat');
handles.data = load(filename);
I now want to change the data in the .mat file with a few functions I have written before as .m files (which I of course can copy into the GUI .m file) and plot a figure using a different pushbutton. Can anyone please help me?
Thanks in advance!
  3 comentarios
Andreas Ingelström
Andreas Ingelström el 6 de Jul. de 2016
Editada: Andreas Ingelström el 6 de Jul. de 2016
I have a GUI with three push buttons (one to load the .mat file, one to create one type of figure and one to create another type), two text fields were I would like to type in parameters to adjust the figures and finally the figure itself.
When I have loaded the .mat file I would like to be able to get hold of the four variables in it when I call for them in other callbacks and other functions I have to adjust the variables and finally plot the data.
I have attached an image of how I would like my GUI to look like.
Andreas Ingelström
Andreas Ingelström el 6 de Jul. de 2016
Editada: Andreas Ingelström el 6 de Jul. de 2016
If I use guidata(hObject, handles) to update the handle and let's say my .mat file consists of the variables p, t, x and y. How can I be able to call for the p matrix in another callback, change it and the save it for further use? Will handles.data.p work?

Iniciar sesión para comentar.

Respuesta aceptada

Geoff Hayes
Geoff Hayes el 7 de Jul. de 2016
Andreas - yes, if your mat file consists of the variables p, t, x, and y, then if your first pushbutton callback does
function load_file_pushbutton_Callback(hObject, eventdata, handles)
filename = uigetfile('*.mat');
handles.data = load(filename);
guidata(hObject,handles);
then you will be able to access these variables in any other callback through (for example)
handles.data.x

Más respuestas (0)

Categorías

Más información sobre Environment and Settings en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by