Main Content

Arrow Properties

Arrow appearance and behavior

Arrow properties control the appearance and behavior of an Arrow object. By changing property values, you can modify certain aspects of the arrow. Use dot notation to query and set properties.

ar = annotation("arrow");
c = ar.Color;
ar.Color = "red";

Color and Styling

expand all

Arrow color, specified as an RGB triplet, a hexadecimal color code, a color name, or a short name. The default RGB triplet value of [0 0 0] corresponds to black.

For a custom color, specify an RGB triplet or a hexadecimal color code.

  • 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].

  • A hexadecimal color code is a string scalar or character vector that starts with a hash symbol (#) followed by three or six hexadecimal digits, which can range from 0 to F. The values are not case sensitive. Therefore, the color codes "#FF8800", "#ff8800", "#F80", and "#f80" are equivalent.

Alternatively, you can specify some common colors by name. This table lists the named color options, the equivalent RGB triplets, and hexadecimal color codes.

Color NameShort NameRGB TripletHexadecimal Color CodeAppearance
"red""r"[1 0 0]"#FF0000"

Sample of the color red

"green""g"[0 1 0]"#00FF00"

Sample of the color green

"blue""b"[0 0 1]"#0000FF"

Sample of the color blue

"cyan" "c"[0 1 1]"#00FFFF"

Sample of the color cyan

"magenta""m"[1 0 1]"#FF00FF"

Sample of the color magenta

"yellow""y"[1 1 0]"#FFFF00"

Sample of the color yellow

"black""k"[0 0 0]"#000000"

Sample of the color black

"white""w"[1 1 1]"#FFFFFF"

Sample of the color white

"none"Not applicableNot applicableNot applicableNo color

Here are the RGB triplets and hexadecimal color codes for the default colors MATLAB® uses in many types of plots.

RGB TripletHexadecimal Color CodeAppearance
[0 0.4470 0.7410]"#0072BD"

Sample of RGB triplet [0 0.4470 0.7410], which appears as dark blue

[0.8500 0.3250 0.0980]"#D95319"

Sample of RGB triplet [0.8500 0.3250 0.0980], which appears as dark orange

[0.9290 0.6940 0.1250]"#EDB120"

Sample of RGB triplet [0.9290 0.6940 0.1250], which appears as dark yellow

[0.4940 0.1840 0.5560]"#7E2F8E"

Sample of RGB triplet [0.4940 0.1840 0.5560], which appears as dark purple

[0.4660 0.6740 0.1880]"#77AC30"

Sample of RGB triplet [0.4660 0.6740 0.1880], which appears as medium green

[0.3010 0.7450 0.9330]"#4DBEEE"

Sample of RGB triplet [0.3010 0.7450 0.9330], which appears as light blue

[0.6350 0.0780 0.1840]"#A2142F"

Sample of RGB triplet [0.6350 0.0780 0.1840], which appears as dark red

Example: "blue"

Example: [0 0 1]

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

Line StyleDescriptionResulting Line
"-"Solid line

Sample of solid line

"--"Dashed line

Sample of dashed line

":"Dotted line

Sample of dotted line

"-."Dash-dotted line

Sample of dash-dotted line, with alternating dashes and dots

"none"No lineNo line

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

Style of the arrowhead, specified as one of the head style options in this table.

StyleResultStyleResult
"plain"

Sample of plain arrowhead

"fourstar"

Sample of fourstar arrowhead

"ellipse"

Sample of ellipse arrowhead

"rectangle"

Sample of rectangle arrowhead

"vback1"

Sample of vback1 arrowhead

"diamond"

Sample of diamond arrowhead

"vback2" (default)

Sample of vback2 arrowhead

"rose"

Sample of rose arrowhead

"vback3"

Sample of vback3 arrowhead

"hypocycloid"

Sample of hypocycloid arrowhead

"cback1"

Sample of cback1 arrowhead

"astroid"

Sample of astroid arrowhead

"cback2"

Sample of cback2 arrowhead

"deltoid"

Sample of deltoid arrowhead

"cback3"

Sample of cback3 arrowhead

"none"No arrowhead

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 point (x_end,y_end) determined by the X and Y properties.

Example: 15

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

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

Position

expand all

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]

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]

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]

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

UnitsDescription
"normalized" (default)Normalized with respect to the figure, uipanel, or uitab that contains the annotation. The lower-left corner of the container maps to (0,0) and the upper-right corner maps to (1,1).
"inches"Inches.
"centimeters"Centimeters.
"characters"

Based on the default system font character size.

  • Character width = width of letter x.

  • Character height = distance between the baselines of two lines of text.

"points"Points. One point equals 1/72 inch.
"pixels"

Pixels.

Starting in R2015b, distances in pixels are independent of your system resolution on Windows® and Macintosh systems:

  • On Windows systems, a pixel is 1/96th of an inch.

  • On Macintosh systems, a pixel is 1/72nd of an inch.

On Linux® systems, the size of a pixel is determined by your system 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 using name-value arguments when creating the object, 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.

Version History

Introduced before R2006a