HMS time with ERRORBAR plot
Show older comments
Hello,
I can't get any HMS times to work with errorbar, I've spent too much time on this and need help.
The example at:
Does works intermittently and if you zoom then the ticks don't auto adjust. If you click auto so the ticks can readjust then you will lose your HMS time.
Please assist,
Thank you.
Answers (1)
Walter Roberson
on 11 May 2017
0 votes
You could use a zoom ActionPostCallback https://www.mathworks.com/help/matlab/ref/zoom.html#brux2aq that did a datetick() call
7 Comments
ZBMedina
on 23 May 2017
Walter Roberson
on 24 May 2017
Unfortunately zoom objects do not get saved with a figure if you savefig(). I thought for a moment the trick of setting the figure UserData to the zoom object would work, but unfortunately the restored zoom object does not have the information...
Ah, that's it. Set the axes CreateFcn to a little bit of code that adds in the zoom object. Then when the figure gets recreated with openfig(), the zoom object will be built along with the axes.
ZBMedina
on 19 May 2020
Walter Roberson
on 19 May 2020
function axes3_CreateFcn(hObject, event)
handles = guidata(hObject);
if ~isfield(handles, 'zoom_obj') || ~isvalid(handles.zoom_obj)
handles.zoom_obj = zoom(ancestor(hObject, 'figure'));
handles.zoom_obj.ActionPostCallback = @(hObject, event) datetick(handles.axes3, 'x');
guidata(hObject, handles);
end
end
ZBMedina
on 20 May 2020
Walter Roberson
on 21 May 2020
invoke a function passing in event that does both items for you.
It could be written without a true function (.m) by adding two helper anonymous functions, but there probably is no point in that.
ZBMedina
on 21 May 2020
Categories
Find more on Errorbars in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!