matplotlib.textpath
- class matplotlib.textpath. TextPath ( xy, s, size=None, prop=None, _interpolation_steps=1, usetex=False ) [source]
-
Bases:
matplotlib.path.Path
Create a path from the text.
Create a path from the text. Note that it simply is a path, not an artist. You need to use the
PathPatch
(or other artists) to draw this path onto the canvas.- Parameters
-
- xy tuple or array of two float values
-
Position of the text. For no offset, use
xy=(0, 0)
. - s str
-
The text to convert to a path.
- size float, optional
-
Font size in points. Defaults to the size specified via the font properties prop.
-
prop
matplotlib.font_manager.FontProperties
, optional -
Font property. If not provided, will use a default
FontProperties
with parameters from the rcParams. - _interpolation_steps int, optional
-
(Currently ignored)
- usetex bool, default: False
-
Whether to use tex rendering.
Examples
The following creates a path from the string "ABC" with Helvetica font face; and another path from the latex fraction 1/2:
from matplotlib.textpath import TextPath from matplotlib.font_manager import FontProperties fp = FontProperties(family="Helvetica", style="italic") path1 = TextPath((12, 12), "ABC", size=12, prop=fp) path2 = TextPath((0, 0), r"$\frac{1}{2}$", size=12, usetex=True)
Also see Using a text as a Path.
- property codes
-
Return the codes
- get_size ( ) [source]
-
Get the text size.
- set_size ( size ) [source]
-
Set the text size.
- property vertices
-
Return the cached path after updating it if necessary.
- class matplotlib.textpath. TextToPath [source]
-
Bases:
object
A class that converts strings to paths.
- DPI =72
- FONT_SCALE =100.0
- get_glyphs_mathtext ( prop, s, glyph_map=None, return_new_glyphs_only=False ) [source]
-
Parse mathtext string s and convert it to a (vertices, codes) pair.
- get_glyphs_tex ( prop, s, glyph_map=None, return_new_glyphs_only=False ) [source]
-
Convert the string s to vertices and codes using usetex mode.
- get_glyphs_with_font ( font, s, glyph_map=None, return_new_glyphs_only=False ) [source]
-
Convert string s to vertices and codes using the provided ttf font.
- get_texmanager ( ) [source]
-
Return the cached
TexManager
instance.
- get_text_path ( prop, s, ismath=False ) [source]
-
Convert text s to path (a tuple of vertices and codes for matplotlib.path.Path).
- Parameters
-
-
prop
FontProperties
-
The font properties for the text.
- s str
-
The text to be converted.
- ismath {False, True, "TeX"}
-
If True, use mathtext parser. If "TeX", use tex for rendering.
-
prop
- Returns
-
- verts list
-
A list of numpy arrays containing the x and y coordinates of the vertices.
- codes list
-
A list of path codes.
Examples
Create a list of vertices and codes from a text, and create a
Path
from those:from matplotlib.path import Path from matplotlib.textpath import TextToPath from matplotlib.font_manager import FontProperties fp = FontProperties(family="Humor Sans", style="italic") verts, codes = TextToPath().get_text_path(fp, "ABC") path = Path(verts, codes, closed=False)
Also see
TextPath
for a more direct way to create a path from a text.
- get_text_width_height_descent ( s, prop, ismath ) [source]
© 2012–2021 Matplotlib Development Team. All rights reserved.
Licensed under the Matplotlib License Agreement.
https://matplotlib.org/3.5.1/api/textpath_api.html