Borrar filtros
Borrar filtros

GUI with multiple figures

4 visualizaciones (últimos 30 días)
ARP
ARP el 23 de Mzo. de 2017
Comentada: ARP el 27 de Mzo. de 2017
Hi all,
I am preparing a GUI to display two figures that I have created in a m.file. The two plots are the result of a series o calculations and number of variables.
The code for the figures is the following:
figure(1)
plot(y_axis,log_scale);
xlabel('Depth (mm)')
ylabel('Relative attenuation (dB)')
axis tight
figure (2)
imagesc(x_axis,y_axis,grayscale);
colormap(gray);
xlabel('Lateral length (mm)')
ylabel('Depth (mm)')
To start the GUI, I have defined a push button that runs the m.file. I have created axes1 and axes2 to allocate the plots.
Only works if I would have a single plot, as axes1 automatically detects the figure. To give instructions for each axes, I have created 2 push buttons. Here is what I write for each push button (only one showed for simplicity):
% --- Executes on button press in Plot1.
function Plot1_Callback(hObject, eventdata, handles)
% hObject handle to Plot1 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
axes(handles.axes1)
plot(y_axis,log_scale);
xlabel('Depth (mm)')
ylabel('Relative attenuation (dB)')
axis tight
..and of course it does not work. I have seen similar questions to the topic, but they are different to my case since my plots originate from the m.file.
Any tips?
Thanks

Respuestas (2)

Nagini Venkata Krishna Kumari Palem
Nagini Venkata Krishna Kumari Palem el 27 de Mzo. de 2017
In my understanding the issue with your code is that the callback is not executed when the push button is clicked. I was looking at the code, after an initial check I think the callback was not invoked anywhere. You may make a call to the callback function in various ways, one of the way is as follows,
pushbutton.Callback = @(~,~,~)pushbutton_Callback(hObject,eventdata,handles);
Please refer to the link below if you need more information on callbacks.
  1 comentario
ARP
ARP el 27 de Mzo. de 2017
Thanks for the reply, but I don't fully understand your suggestion. I don't see how is that going to solve my problem . I create the axis in GUIDE, select create callback function, and then write the instructions for the plot under each callback functions. The push button should not be necessary. The plots should open wherever I assign them (axis1, axis2).
I can't figure out what is missing

Iniciar sesión para comentar.


ARP
ARP el 27 de Mzo. de 2017
Thanks for the reply, but I don't fully understand your suggestion. I don't see how is that going to solve my problem . I create the axis in GUIDE, select create callback function, and then write the instructions for the plot under each callback functions. The push button should not be necessary. The plots should open wherever I assign them (axis1, axis2).
I can't figure out what is missing

Categorías

Más información sobre Interactive Control and Callbacks 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