is a graphics directive specifying that arrows that follow should have arrowheads with sizes, positions, and forms specified by spec.

Details and Options

  • With the default Arrowheads[Automatic], a single arrowhead is placed at the head of each arrow.
  • Arrowheads[s] specifies that arrowheads should have a length that is a fraction s of the total width of the graphic. The default is 0.04. »
  • The symbolic values Tiny, Small, Medium, and Large can be used for s. With these values, the size of the arrowhead is independent of the total width of the graphic. »
  • Arrowheads[{spec1,spec2,}] specifies that arrows should include several arrowhead elements.
  • Each arrowhead element can be specified as follows:
  • sdefault arrowhead with scaled size s
    {Automatic,pos}default arrowhead at position pos
    {s,pos}scaled default arrowhead at position pos
    {s,pos,g}arrowhead drawn as graphic g
    {s,pos,{g,δ}}shaft foreshortened by δ
  • The position pos runs from 0 to 1 from the tail to the head of the arrow.
  • Arrowheads[{s0,s1,,sn}] specifies arrowheads with scaled sizes si at positions i/n. »
  • Arrowheads[{-s,s}] gives doubleheaded arrows. »
  • The graphic g is placed so that the origin {0,0} of its coordinates lies at position pos along each arrow.
  • The graphic g is oriented so that its positive axis is aligned with the direction of the shaft at position pos.
  • The graphic g is scaled so that one unit of its coordinates corresponds to a fraction s of the width of the whole graphic in which the arrow is being drawn.
  • The graphic g is always assumed to have AspectRatio->Automatic.
  • With the specification {s,pos,{g,δ}}, the shaft of the arrow is foreshortened by δ in the coordinate system of g. This can prevent a thick shaft from "poking through" arrowheads at the head or tail of the arrow. »
  • In 3D, the default option setting Appearance->"Flat" makes arrowheads always be rendered in the plane of the screen. Appearance->"Projected" makes them be rendered in 3D, and projected into the plane of the screen.


open allclose all

Basic Examples  (3)

A 2D arrow:

A 3D arrow:

A full 3D arrow primitive using tubes:

Scope  (16)

Arrow Sizes  (5)

Arrowheads with scaled sizes:

Arrowheads with scaled sizes in 3D:

Arrowheads with scaled sizes for tubes in 3D:

Symbolic values to specify predefined absolute sizes of arrowheads:

Symbolic values in 3D:

With tubed arrows:

Multiple Arrowheads  (8)

Double-headed arrow:

Uniformly spaced arrowheads with specific sizes:

Specify arrowhead size and position:

Specify size and position in 3D:

With tubed arrows:

Multiple arrowheads with specific sizes and positions:

In 3D:

With tubed arrows:

Reverse arrowheads by assigning negative size:

In 3D:

With tubed arrows:

Multiple disconnected arrows:

Multiple disconnected arrows with different arrowheads:

Custom Arrowheads  (3)

Graphics can be used as an arrowhead:

Graphics3D can also be used as an arrowhead for 3D arrow:

Foreshorten the shaft:

In 3D:

With tubed arrows:

Applications  (1)

A billboard tree using a projected arrowhead:

Neat Examples  (1)

Moving arrowheads:

Wolfram Research (2007), Arrowheads, Wolfram Language function, (updated 2008).


Wolfram Research (2007), Arrowheads, Wolfram Language function, (updated 2008).


Wolfram Language. 2007. "Arrowheads." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2008.


Wolfram Language. (2007). Arrowheads. Wolfram Language & System Documentation Center. Retrieved from


@misc{reference.wolfram_2024_arrowheads, author="Wolfram Research", title="{Arrowheads}", year="2008", howpublished="\url{}", note=[Accessed: 19-May-2024 ]}


@online{reference.wolfram_2024_arrowheads, organization={Wolfram Research}, title={Arrowheads}, year={2008}, url={}, note=[Accessed: 19-May-2024 ]}