Info

この質問は閉じられています。 編集または回答するには再度開いてください。

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

1 回表示 (過去 30 日間)
RZM
RZM 2016 年 5 月 20 日
閉鎖済み: MATLAB Answer Bot 2021 年 8 月 20 日
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.

回答 (1 件)

Geoff Hayes
Geoff Hayes 2016 年 5 月 25 日
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')

この質問は閉じられています。

Community Treasure Hunt

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

Start Hunting!

Translated by