matplotlib.patheffects
#
定义路径效果的类。路径效果支持在 Text
、Line2D
和 Patch
中。
另请参阅
- 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]#
-
“标识”路径效果。
Normal PathEffect 的唯一目的是绘制原始 artist,不带任何特殊路径效果。
- 参数:
- offset(float, float),默认值:(0, 0)
应用于路径的 (x, y) 偏移量,以点为单位。
- class matplotlib.patheffects.PathEffectRenderer(path_effects, renderer)[source]#
基类:
RendererBase
实现一个包含另一个渲染器的渲染器。
此代理然后拦截绘制调用,调用相应的
AbstractPathEffect
绘制方法。注意
此 RendererBase 子类并非所有方法都被重写。可能需要添加更多方法以进一步扩展 PathEffects 的功能。
- 参数:
- path_effects
AbstractPathEffect
的可迭代对象 此渲染器表示的路径效果。
- renderer
RendererBase
子类
- path_effects
- draw_markers(gc, marker_path, marker_trans, path, *args, **kwargs)[source]#
在 path 的每个顶点(不包括控制点)绘制一个标记。
基本(回退)实现会多次调用
draw_path
。后端可能希望重写此方法,以便只绘制一次标记并多次重用它。
- draw_path_collection(gc, master_transform, paths, *args, **kwargs)[source]#
绘制一组 paths。
每个路径首先通过 all_transforms(一个 (3, 3) 矩阵列表)中的相应条目进行变换,然后通过 master_transform 进行变换。然后,它们通过 offsets 中的相应条目进行平移,该条目已首先通过 offset_trans 进行了变换。
facecolors、edgecolors、linewidths、linestyles 和 antialiased 是设置相应属性的列表。
offset_position 现在未使用,但参数保留是为了向后兼容。
基本(回退)实现会多次调用
draw_path
。后端可能希望重写此方法,以便只渲染每组路径数据一次,然后使用不同的偏移量、颜色、样式等多次引用该路径。提供了生成器方法_iter_collection_raw_paths
和_iter_collection
,以帮助(并标准化)跨后端的实现。强烈建议使用这些生成器,以便可以全局更改draw_path_collection
的行为。
- class matplotlib.patheffects.PathPatchEffect(offset=(0, 0), **kwargs)[source]#
-
绘制一个
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]#
-
通过线条实现的简单阴影。
- 参数:
- offset(float, float),默认值:(2, -2)
应用于路径的 (x, y) 偏移量,以点为单位。
- shadow_color颜色,默认值:'black'
阴影颜色。
None
值会采用原始 artist 的颜色,并乘以 rho 缩放因子。- alphafloat,默认值:0.3
创建的阴影补丁的 alpha 透明度。
- rhofloat,默认值:0.3
如果 shadow_color 为
None
,则应用于 rgbFace 颜色的缩放因子。- **kwargs
额外关键字被存储并传递给
AbstractPathEffect._update_gc()
。
- class matplotlib.patheffects.SimplePatchShadow(offset=(2, -2), shadow_rgbFace=None, alpha=None, rho=0.3, **kwargs)[source]#
-
通过填充补丁实现的简单阴影。
- 参数:
- offset(float, float),默认值:(2, -2)
阴影的 (x, y) 偏移量,以点为单位。
- shadow_rgbFace颜色
阴影颜色。
- alphafloat,默认值:0.3
创建的阴影补丁的 alpha 透明度。
- rhofloat,默认值:0.3
如果未指定 shadow_rgbFace,则应用于 rgbFace 颜色的缩放因子。
- **kwargs
额外关键字被存储并传递给
AbstractPathEffect._update_gc()
。
- class matplotlib.patheffects.Stroke(offset=(0, 0), **kwargs)[source]#
-
一个基于线条的 PathEffect,它重新绘制描边。
路径将使用其 gc 更新为给定的关键字参数进行描边,即,关键字参数应为有效的 gc 参数值。
- class matplotlib.patheffects.TickedStroke(offset=(0, 0), spacing=10.0, angle=45.0, length=np.float64(1.4142135623730951), **kwargs)[source]#
-
一个基于线条的 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()
。
示例
- class matplotlib.patheffects.withSimplePatchShadow(offset=(2, -2), shadow_rgbFace=None, alpha=None, rho=0.3, **kwargs)[source]#
-
一个快捷的 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()
。
- 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 参数值。
- 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()
。
示例