Annotation Arrow Properties

Control annotation arrow appearance and behavior

Annotation arrow properties control the appearance and behavior of an annotation arrow object. By changing property values, you can modify certain aspects of the arrow.

Starting in R2014b, you can use dot notation to refer to a particular object and property:

h = annotation('arrow');
c = h.Color;
h.Color = 'red';

If you are using an earlier release, use the get and set functions to query and set properties.

Appearance

expand all

ColorArrow color[0 0 0] (default) | RGB triplet | color string | 'none'

Arrow color, specified as a three-element RGB triplet, a color string, or 'none'. The default RGB triplet value of [0 0 0] corresponds to black. If you set the color to 'none', then the arrow is invisible.

An RGB triplet is a three-element row vector whose elements specify the intensities of the red, green, and blue components of the color. The intensities must be in the range [0,1], for example, [0.4 0.6 0.7]. This table lists RGB triplet values that have equivalent color strings.

Long NameShort NameRGB Triplet
'yellow''y'[1 1 0]
'magenta''m'[1 0 1]
'cyan''c'[0 1 1]
'red''r'[1 0 0]
'green''g'[0 1 0]
'blue''b'[0 0 1]
'white''w'[1 1 1]
'black'k'[0 0 0]

Example: 'blue'

Example: [0 0 1]

LineStyleStyle of arrow stem'-' (default) | '--' | ':' | '-.' | 'none'

Style of arrow stem, specified as one of the strings listed in this table.

StringLine StyleResult
'-'Solid line

'--'Dashed line

':'Dotted line

'-.'Dash-dotted line

'none'No stemNo stem

LineWidthWidth of arrow stem0.5 (default) | positive value

Width of arrow stem, specified as a positive value in point units. One point equals 1/72 inch.

Example: 0.75

Data Types: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

HeadStyleStyle of arrowhead'vback2' (default) | string

Style of the arrowhead, specified as one of the strings in this table.

StringResultStringResult
'plain'

'fourstar'

'ellipse'

'rectangle'

'vback1'

'diamond'

'vback2' (default)

'rose'

'vback3'

'hypocycloid'

'cback1'

'astroid'

'cback2'

'deltoid'

'cback3'

'none'No arrowhead

HeadLengthLength of arrowhead10 (default) | scalar numeric value

Length of the arrowhead, specified as a scalar numeric value in point units. One point equals 1/72 inch. The arrowhead extends backwards from the (x, y) coordinate defined by the first two elements in the Position property.

Example: 15

Data Types: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

HeadWidthWidth of arrowhead10 (default) | scalar numeric value

Width of the arrowhead, specified as a scalar numeric value in point units. One point equals 1/72 inch.

Example: 15

Data Types: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Location and Size

expand all

XBeginning and ending x-coordinates[0.3 0.4] (default) | two-element vector

Beginning and ending x-coordinates, specified as a two-element vector of the form [x_begin x_end].

By default, the units are normalized to the figure. The lower-left corner of the figure maps to (0,0), and the upper-right corner maps to (1,1). To change the units, use the Units property.

Example: [0.2 0.5]

YBeginning and ending y-coordinates[0.3 0.4] (default) | two-element vector

Beginning and ending y-coordinates, specified as a two-element vector of the form [y_begin y_end].

By default, the units are normalized to the figure. The lower-left corner of the figure maps to (0,0), and the upper-right corner maps to (1,1). To change the units, use the Units property.

Example: [0.2 0.5]

PositionSize and location[0.3 0.3 0.1 0.1] (default) | four-element vector

Size and location, specified as a four-element vector of the form [x_begin y_begin dx dy]. The first two elements specify the coordinates for the beginning of the arrow. The second two elements specify the slope of the arrow.

By default, the units are normalized to the figure. The lower-left corner of the figure maps to (0,0), and the upper-right corner maps to (1,1). To change the units, use the Units property.

Example: [0.5 0.5 0.2 0.3]

UnitsPosition units'normalized' (default) | 'inches' | 'centimeters' | 'characters' | 'points' | 'pixels'

Position units, specified as one of the values in this table.

UnitsDescription
'normalized' (default)Normalized with respect to the figure. The lower-left corner of the figure maps to (0,0) and the upper-right corner maps to (1,1).
'inches'Inches.
'centimeters'Centimeters.
'characters'Based on the size of characters in the default system font. The width of one character unit is the width of the letter x. The height of one character unit is the distance between the baselines of two lines of text.
'points'Points. One point equals 1/72 inch.
'pixels'Pixels. Pixel size depends on the screen resolution.

All units are measured from the lower-left corner of the figure window.

This property affects the Position property. If you change the units, then it is good practice to return it to the default value after completing your computation to prevent affecting other functions that assume Units is set to the default value.

If you specify the Position and Units properties as Name,Value pairs when creating the annotation arrow, then the order of specification matters. If you want to define the position with particular units, then you must set the Units property before the Position property.

Was this topic helpful?