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: -
xytuple or array of two float values
-
Position of the text. For no offset, use
xy=(0, 0)
. -
sstr
-
The text to convert to a path.
-
sizefloat, optional
-
Font size in points. Defaults to the size specified via the font properties prop.
-
propmatplotlib.font_manager.FontProperties, optional
-
Font property. If not provided, will use a default
FontProperties
with parameters from the rcParams. -
_interpolation_stepsint, optional
-
(Currently ignored)
-
usetexbool, 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 Demo Text Path.
-
property codes
-
Return the codes
-
get_size(self)
[source] -
Get the text size.
-
set_size(self, 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(self, 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(self, 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(self, 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(self)
[source] -
Return the cached
TexManager
instance.
-
get_text_path(self, prop, s, ismath=False)
[source] -
Convert text s to path (a tuple of vertices and codes for matplotlib.path.Path).
Parameters: -
propFontProperties
-
The font properties for the text.
-
sstr
-
The text to be converted.
-
ismath{False, True, "TeX"}
-
If True, use mathtext parser. If "TeX", use tex for rendering.
Returns: -
vertslist
-
A list of numpy arrays containing the x and y coordinates of the vertices.
-
codeslist
-
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(self, s, prop, ismath)
[source]
-
© 2012–2018 Matplotlib Development Team. All rights reserved.
Licensed under the Matplotlib License Agreement.
https://matplotlib.org/3.3.3/api/textpath_api.html