You are reading documentation for the unreleased version of Matplotlib. Try searching for the released version of this page instead?
Applications are open for the 2018 John Hunter Matplotlib Summer Fellowship. Apply now!
Version 2.2.2.post1768+g23420a4c1
Fork me on GitHub

Table Of Contents



This module contains functions to handle markers. Used by both the marker functionality of plot and scatter.

All possible markers are defined here:

marker symbol description
"." m00 point
"," m01 pixel
"o" m02 circle
"v" m03 triangle_down
"^" m04 triangle_up
"<" m05 triangle_left
">" m06 triangle_right
"1" m07 tri_down
"2" m08 tri_up
"3" m09 tri_left
"4" m10 tri_right
"8" m11 octagon
"s" m12 square
"p" m13 pentagon
"P" m23 plus (filled)
"*" m14 star
"h" m15 hexagon1
"H" m16 hexagon2
"+" m17 plus
"x" m18 x
"X" m24 x (filled)
"D" m19 diamond
"d" m20 thin_diamond
"|" m21 vline
"_" m22 hline
0 (TICKLEFT) m25 tickleft
1 (TICKRIGHT) m26 tickright
2 (TICKUP) m27 tickup
3 (TICKDOWN) m28 tickdown
4 (CARETLEFT) m29 caretleft
5 (CARETRIGHT) m30 caretright
6 (CARETUP) m31 caretup
7 (CARETDOWN) m32 caretdown
8 (CARETLEFTBASE) m33 caretleft (centered at base)
9 (CARETRIGHTBASE) m34 caretright (centered at base)
10 (CARETUPBASE) m35 caretup (centered at base)
11 (CARETDOWNBASE) m36 caretdown (centered at base)
"None", " " or ""   nothing
'$...$' m37 Render the string using mathtext. E.g "$f$" for marker showing the letter f.
verts   A list of (x, y) pairs used for Path vertices. The center of the marker is located at (0,0) and the size is normalized, such that the created path is encapsulated inside the unit cell.
path   A Path instance.
(numsides, style, angle)  

The marker can also be a tuple (numsides, style, angle), which will create a custom, regular symbol.

the number of sides

the style of the regular symbol:

0 a regular polygon
1 a star-like symbol
2 an asterisk
3 a circle (numsides and angle is ignored); deprecated.
the angle of rotation of the symbol

For backward compatibility, the form (verts, 0) is also accepted, but it is deprecated and equivalent to just verts for giving a raw set of vertices that define the shape.

None is the default which means 'nothing', however this table is referred to from other docs for the valid inputs from marker inputs and in those cases None still means 'default'.

Note that special symbols can be defined via the STIX math font, e.g. "$♫$". For an overview over the STIX font symbols refer to the STIX font table. Also see the STIX Fonts Demo.

Integer numbers from 0 to 11 create lines and triangles. Those are equally accessible via capitalized variables, like CARETDOWNBASE. Hence the following are equivalent:

plt.plot([1,2,3], marker=11)
plt.plot([1,2,3], marker=matplotlib.markers.CARETDOWNBASE)

Examples showing the use of markers:


MarkerStyle([marker, fillstyle])