matplotlib.patheffects#

定义路径效果的类。路径效果支持在 TextLine2DPatch 中。

另请参阅

路径效果指南

class matplotlib.patheffects.AbstractPathEffect(offset=(0.0, 0.0))[source]#

基类: object

路径效果的基类。

子类应重写 draw_path 方法以添加效果功能。

参数:
offset(float, float),默认值:(0, 0)

应用于路径的 (x, y) 偏移量,以点为单位。

draw_path(renderer, gc, tpath, affine, rgbFace=None)[source]#

派生类应重写此方法。参数与 matplotlib.backend_bases.RendererBase.draw_path() 相同,但第一个参数是渲染器。

class matplotlib.patheffects.Normal(offset=(0.0, 0.0))[source]#

基类:AbstractPathEffect

“标识”路径效果。

Normal PathEffect 的唯一目的是绘制原始 artist,不带任何特殊路径效果。

参数:
offset(float, float),默认值:(0, 0)

应用于路径的 (x, y) 偏移量,以点为单位。

class matplotlib.patheffects.PathEffectRenderer(path_effects, renderer)[source]#

基类:RendererBase

实现一个包含另一个渲染器的渲染器。

此代理然后拦截绘制调用,调用相应的 AbstractPathEffect 绘制方法。

注意

此 RendererBase 子类并非所有方法都被重写。可能需要添加更多方法以进一步扩展 PathEffects 的功能。

参数:
path_effectsAbstractPathEffect 的可迭代对象

此渲染器表示的路径效果。

rendererRendererBase 子类
close_group(s)[source]#

关闭带有标签 *s* 的分组元素。

仅由 SVG 渲染器使用。

copy_with_path_effect(path_effects)[source]#
draw_markers(gc, marker_path, marker_trans, path, *args, **kwargs)[source]#

path 的每个顶点(不包括控制点)绘制一个标记。

基本(回退)实现会多次调用 draw_path。后端可能希望重写此方法,以便只绘制一次标记并多次重用它。

参数:
gcGraphicsContextBase

图形上下文。

marker_pathPath

标记的路径。

marker_transTransform

应用于标记的仿射变换。

pathPath

绘制标记的位置。

transTransform

应用于路径的仿射变换。

rgbFace颜色,可选
draw_path(gc, tpath, affine, rgbFace=None)[source]#

使用给定的仿射变换绘制 Path 实例。

draw_path_collection(gc, master_transform, paths, *args, **kwargs)[source]#

绘制一组 paths

每个路径首先通过 all_transforms(一个 (3, 3) 矩阵列表)中的相应条目进行变换,然后通过 master_transform 进行变换。然后,它们通过 offsets 中的相应条目进行平移,该条目已首先通过 offset_trans 进行了变换。

facecolorsedgecolorslinewidthslinestylesantialiased 是设置相应属性的列表。

offset_position 现在未使用,但参数保留是为了向后兼容。

基本(回退)实现会多次调用 draw_path。后端可能希望重写此方法,以便只渲染每组路径数据一次,然后使用不同的偏移量、颜色、样式等多次引用该路径。提供了生成器方法 _iter_collection_raw_paths_iter_collection,以帮助(并标准化)跨后端的实现。强烈建议使用这些生成器,以便可以全局更改 draw_path_collection 的行为。

open_group(s, gid=None)[source]#

打开一个分组元素,其标签为 s,ID 为 gid(如果已设置)。

仅由 SVG 渲染器使用。

class matplotlib.patheffects.PathPatchEffect(offset=(0, 0), **kwargs)[source]#

基类:AbstractPathEffect

绘制一个 PathPatch 实例,其路径来自原始 PathEffect artist。

参数:
offset(float, float),默认值:(0, 0)

应用于路径的 (x, y) 偏移量,以点为单位。

**kwargs

所有关键字参数都传递给 PathPatch 构造函数。不能被重写的属性是 "path"、"clip_box"、"transform" 和 "clip_path"。

draw_path(renderer, gc, tpath, affine, rgbFace)[source]#

派生类应重写此方法。参数与 matplotlib.backend_bases.RendererBase.draw_path() 相同,但第一个参数是渲染器。

class matplotlib.patheffects.SimpleLineShadow(offset=(2, -2), shadow_color='k', alpha=0.3, rho=0.3, **kwargs)[source]#

基类:AbstractPathEffect

通过线条实现的简单阴影。

参数:
offset(float, float),默认值:(2, -2)

应用于路径的 (x, y) 偏移量,以点为单位。

shadow_color颜色,默认值:'black'

阴影颜色。None 值会采用原始 artist 的颜色,并乘以 rho 缩放因子。

alphafloat,默认值:0.3

创建的阴影补丁的 alpha 透明度。

rhofloat,默认值:0.3

如果 shadow_colorNone,则应用于 rgbFace 颜色的缩放因子。

**kwargs

额外关键字被存储并传递给 AbstractPathEffect._update_gc()

draw_path(renderer, gc, tpath, affine, rgbFace)[source]#

重写标准 draw_path 以添加阴影偏移量和必要的阴影颜色更改。

class matplotlib.patheffects.SimplePatchShadow(offset=(2, -2), shadow_rgbFace=None, alpha=None, rho=0.3, **kwargs)[source]#

基类:AbstractPathEffect

通过填充补丁实现的简单阴影。

参数:
offset(float, float),默认值:(2, -2)

阴影的 (x, y) 偏移量,以点为单位。

shadow_rgbFace颜色

阴影颜色。

alphafloat,默认值:0.3

创建的阴影补丁的 alpha 透明度。

rhofloat,默认值:0.3

如果未指定 shadow_rgbFace,则应用于 rgbFace 颜色的缩放因子。

**kwargs

额外关键字被存储并传递给 AbstractPathEffect._update_gc()

draw_path(renderer, gc, tpath, affine, rgbFace)[source]#

重写标准 draw_path 以添加阴影偏移量和必要的阴影颜色更改。

class matplotlib.patheffects.Stroke(offset=(0, 0), **kwargs)[source]#

基类:AbstractPathEffect

一个基于线条的 PathEffect,它重新绘制描边。

路径将使用其 gc 更新为给定的关键字参数进行描边,即,关键字参数应为有效的 gc 参数值。

draw_path(renderer, gc, tpath, affine, rgbFace)[source]#

使用更新后的 gc 绘制路径。

class matplotlib.patheffects.TickedStroke(offset=(0, 0), spacing=10.0, angle=45.0, length=np.float64(1.4142135623730951), **kwargs)[source]#

基类:AbstractPathEffect

一个基于线条的 PathEffect,它绘制带刻度样式的路径。

这种线条样式常用于表示优化中的约束。刻度可用于指示线条的一侧无效,或表示域的闭合边界(例如,墙壁或管道边缘)。

刻度的间距、长度和角度可以控制。

这种线条样式有时被称为交叉影线。

另请参阅 TickedStroke 路径效果 示例。

参数:
offset(float, float),默认值:(0, 0)

应用于路径的 (x, y) 偏移量,以点为单位。

spacingfloat,默认值:10.0

刻度之间的间距,以点为单位。

anglefloat,默认值:45.0

路径和刻度之间的角度,以度为单位。角度的测量方式就像你沿着曲线行走的蚂蚁,0 度表示正前方,90 度表示左侧,-90 度表示右侧,180 度表示后方。要改变刻度方向,请改变角度的符号。

lengthfloat,默认值:1.414

刻度相对于间距的长度。建议长度:当 angle=45 时为 1.414 (sqrt(2)),当 angle=90 时为 1.0,当 angle=60 时为 2.0。

**kwargs

额外关键字被存储并传递给 AbstractPathEffect._update_gc()

示例

参阅 TickedStroke 路径效果

draw_path(renderer, gc, tpath, affine, rgbFace)[source]#

使用更新后的 gc 绘制路径。

class matplotlib.patheffects.withSimplePatchShadow(offset=(2, -2), shadow_rgbFace=None, alpha=None, rho=0.3, **kwargs)[source]#

基类:SimplePatchShadow

一个快捷的 PathEffect,用于应用 SimplePatchShadow 然后绘制原始 Artist。

使用此类,您可以:

artist.set_path_effects([patheffects.withSimplePatchShadow()])

作为以下代码的快捷方式:

artist.set_path_effects([patheffects.SimplePatchShadow(),
                         patheffects.Normal()])
参数:
offset(float, float),默认值:(2, -2)

阴影的 (x, y) 偏移量,以点为单位。

shadow_rgbFace颜色

阴影颜色。

alphafloat,默认值:0.3

创建的阴影补丁的 alpha 透明度。

rhofloat,默认值:0.3

如果未指定 shadow_rgbFace,则应用于 rgbFace 颜色的缩放因子。

**kwargs

额外关键字被存储并传递给 AbstractPathEffect._update_gc()

draw_path(renderer, gc, tpath, affine, rgbFace)[source]#

重写标准 draw_path 以添加阴影偏移量和必要的阴影颜色更改。

class matplotlib.patheffects.withStroke(offset=(0, 0), **kwargs)[source]#

基类:Stroke

一个快捷的 PathEffect,用于应用 Stroke 然后绘制原始 Artist。

使用此类,您可以:

artist.set_path_effects([patheffects.withStroke()])

作为以下代码的快捷方式:

artist.set_path_effects([patheffects.Stroke(),
                         patheffects.Normal()])

路径将使用其 gc 更新为给定的关键字参数进行描边,即,关键字参数应为有效的 gc 参数值。

draw_path(renderer, gc, tpath, affine, rgbFace)[source]#

使用更新后的 gc 绘制路径。

class matplotlib.patheffects.withTickedStroke(offset=(0, 0), spacing=10.0, angle=45.0, length=np.float64(1.4142135623730951), **kwargs)[source]#

基类:TickedStroke

一个快捷的 PathEffect,用于应用 TickedStroke 然后绘制原始 Artist。

使用此类,您可以:

artist.set_path_effects([patheffects.withTickedStroke()])

作为以下代码的快捷方式:

artist.set_path_effects([patheffects.TickedStroke(),
                         patheffects.Normal()])
参数:
offset(float, float),默认值:(0, 0)

应用于路径的 (x, y) 偏移量,以点为单位。

spacingfloat,默认值:10.0

刻度之间的间距,以点为单位。

anglefloat,默认值:45.0

路径和刻度之间的角度,以度为单位。角度的测量方式就像你沿着曲线行走的蚂蚁,0 度表示正前方,90 度表示左侧,-90 度表示右侧,180 度表示后方。要改变刻度方向,请改变角度的符号。

lengthfloat,默认值:1.414

刻度相对于间距的长度。建议长度:当 angle=45 时为 1.414 (sqrt(2)),当 angle=90 时为 1.0,当 angle=60 时为 2.0。

**kwargs

额外关键字被存储并传递给 AbstractPathEffect._update_gc()

示例

参阅 TickedStroke 路径效果

draw_path(renderer, gc, tpath, affine, rgbFace)[source]#

使用更新后的 gc 绘制路径。