Effacer les filtres
Effacer les filtres

Info

Cette question est clôturée. Rouvrir pour modifier ou répondre.

Problem on working with timer object to refresh an axes on a GUI

1 vue (au cours des 30 derniers jours)
RZM
RZM le 20 Mai 2016
Clôturé : MATLAB Answer Bot le 20 Août 2021
I am dealing with timer object in the MATLAB GUI. Assume that we have two axes on a GUI and under display update function we plot on each axes separately. The problem here is that when the plot function executes the hObject properties changes like this: before plot execution:
get(hObject,'Children')
ans =
3x1 graphics array:
UIControl (startbutton)
Axes (axes1)
Axes (axes2)
After plot execution axes1 disappears.
plot(x,y,'LineWidth',1,'Marker','o','MarkerFaceColor','b','LineStyle','none')
K>> get(hObject,'Children')
ans =
3x1 graphics array:
UIControl (startbutton)
Axes
Axes (axes2)
So when the timer gets to the refreshing time (and the execution of display update function), a new figure is ploted and each period only that plot updates not the axes1 on the GUI.

Réponses (1)

Geoff Hayes
Geoff Hayes le 25 Mai 2016
RZM - I think that we would need to see more of your code (that in the timer callback) to get a better idea of what may be going wrong. For example, what is hObject?
As for the plot not being displayed in the correct axes, why not specify the axes that you wish to display the plot in? Your code is
plot(x,y,'LineWidth',1,'Marker','o','MarkerFaceColor','b','LineStyle','none')
If you want to plot x and y in axes1, then specify it as
plot(handles.axes1,x,y,'LineWidth',1,'Marker','o','MarkerFaceColor','b','LineStyle','none')

Cette question est clôturée.

Community Treasure Hunt

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

Start Hunting!

Translated by