ANNOTATEAXES wraps the built-in ANNOTATION function to create an ANNOTATION object with its position (i.e., POSITION or X/Y properties) values to be specified in the axes data coordinate. ANNOTATEAXES sets up property listeners so that any modification to the annotation object position will be made in the axes data coordinate (although its current position is shown in the normalized figure coordinate). Also, changing the Position, XLim, or YLim properties of the associated axes (and its parent uipanels) will automatically trigger the adjustment of the annotation object location so it maintains proper position with respect to the axes. The annotation object is automatically deleted when its axes is deleted.
ANNOTATEAXES supports all ANNOTATION object types and takes the same arguments as the ANNOTATION function (except for specifying axes instead of axes).
rh=annotateaxes('rectangle',[.1 .1 .3 .3]);
Kesh Ikuma (2020). ANNOTATEAXES: Annotation object in axes data coordinate (https://www.mathworks.com/matlabcentral/fileexchange/45240-annotateaxes-annotation-object-in-axes-data-coordinate), MATLAB Central File Exchange. Retrieved .
Added log scale support & warning if not in 2D-view