Marker-related line properties in annotations

5 views (last 30 days)
LR
LR on 19 Jun 2019
Answered: LR on 19 Jun 2019
Hi folks,
Simple problem here: I am creating a line object outside a figure's axes using the annotation function.
I need the line object to exhibit circles at each data point, just like the following would do:
line([x1 x2],[y1 y2],'color','k','marker','o')
This works because line objects do have a marker property (and related properties like markersize, markeredgecolor, markerfacecolor)
However, when creating the same line object with the annotations function, like this:
annotation('line',phi1([x1 x2]),phi2([y1 y2]),'color','k','marker','o')
(where phi1 and phi2 are two functions that transform the x and y coordinates to fit in the axes of the figure)
I get the following error message:
---------------
Error using matlab.graphics.shape.Line/set
There is no Marker property on the Line class.
---------------
What is going on? I tried fiddling around with the handles to the annotation, with no success.
  1 Comment
LR
LR on 19 Jun 2019
Edited: LR on 19 Jun 2019
The documentation of annotation does not mention the specific properties that can be modified for line objects, however, it does specify that the annotation function can be used as follows:
annotation(...,'PropertyName','PropertyValue',...)

Sign in to comment.

Accepted Answer

LR
LR on 19 Jun 2019
It appears that the annotation function does not support the marker-related properties for the Line class, or the curvature property for the Rectangle class, etc.
One workaround to display objects outside the axes and modify their marker properties is to set the 'Clipping' property of the object to 'off':
line([x1 x2],[y1 y2],'color','k','marker','o','Clipping','off')
where x1, x2, y1, y2 are the coordinates of the line object given in the current axis.

More Answers (0)

Categories

Find more on Graphics Object Properties in Help Center and File Exchange

Products


Release

R2015a

Community Treasure Hunt

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

Start Hunting!