matplotlib.lines.Line2D#

class matplotlib.lines.Line2D(xdata, ydata, *, linewidth=None, linestyle=None, color=None, gapcolor=None, marker=None, markersize=None, markeredgewidth=None, markeredgecolor=None, markerfacecolor=None, markerfacecoloralt='none', fillstyle=None, antialiased=None, dash_capstyle=None, solid_capstyle=None, dash_joinstyle=None, solid_joinstyle=None, pickradius=5, drawstyle=None, markevery=None, **kwargs)[源代码][源代码]#

基类:Artist

一条线 - 这条线可以有一个连接所有顶点的实线样式,并且在每个顶点处有一个标记。此外,实线的绘制受绘图样式的影响,例如,可以创建各种样式的“阶梯”线。

使用 xdataydata 序列中的 xy 数据创建一个 Line2D 实例。

其他关键字参数是 Line2D 属性:

属性

描述

agg_filter

一个过滤函数,它接收一个 (m, n, 3) 的浮点数数组和一个 dpi 值,并返回一个 (m, n, 3) 的数组和两个从图像左下角开始的偏移量。

alpha

标量或无

animated

布尔

抗锯齿 或 aa

布尔

clip_box

BboxBase 或 None

clip_on

布尔

clip_path

补丁或(路径,变换)或无

颜色 或 c

color

dash_capstyle

CapStyle 或 {'butt', 'projecting', 'round'}

dash_joinstyle

JoinStyle 或 {'miter', 'round', 'bevel'}

虚线

浮点数序列(开/关墨水以点为单位)或(None, None)

数据

(2, N) 数组或两个一维数组

drawstyle 或 ds

{'default', 'steps', 'steps-pre', 'steps-mid', 'steps-post'}, 默认值: 'default'

figure

FigureSubFigure

fillstyle

{'full', 'left', 'right', 'bottom', 'top', 'none'}

gapcolor

color or None

gid

str

in_layout

布尔

标签

对象

linestyle 或 ls

{'-', '--', '-.', ':', '', (偏移, 开关序列), ...}

线宽 或 lw

浮动

标记

标记样式字符串, PathMarkerStyle

markeredgecolor 或 mec

color

markeredgewidth 或 mew

浮动

markerfacecolor 或 mfc

color

markerfacecoloralt 或 mfcalt

color

markersize 或 ms

浮动

markevery

None 或 int 或 (int, int) 或 slice 或 list[int] 或 float 或 (float, float) 或 list[bool]

鼠标悬停

布尔

path_effects

AbstractPathEffect 列表

picker

float 或 callable[[Artist, Event], tuple[bool, dict]]

pickradius

浮动

光栅化

布尔

sketch_params

(scale: float, length: float, randomness: float)

snap

布尔值或无

solid_capstyle

CapStyle 或 {'butt', 'projecting', 'round'}

solid_joinstyle

JoinStyle 或 {'miter', 'round', 'bevel'}

transform

未知

url

str

可见

布尔

xdata

一维数组

ydata

一维数组

zorder

浮动

关于线条样式的描述,请参见 set_linestyle(),关于标记的描述,请参见 set_marker(),关于绘制样式的描述,请参见 set_drawstyle()

contains(mouseevent)[源代码][源代码]#

测试 mouseevent 是否发生在该线上。

如果事件发生在距离线条小于 ``self.pickradius``(默认:5 点)的范围内,则认为事件“在”线条上发生。使用 get_pickradiusset_pickradius 来获取或设置拾取半径。

参数:
mouseeventMouseEvent
返回:
包含布尔

是否有任何值在半径范围内。

详情dict

一个字典 {'ind': pointlist},其中 pointlist 是位于事件位置周围 pickradius 内的线条点的列表。

TODO: 按距离对返回的索引进行排序

draw(renderer)[源代码][源代码]#

使用给定的渲染器绘制艺术家(及其子项)。

如果艺术家不可见(Artist.get_visible 返回 False),则此操作无效。

参数:
渲染器 : RendererBase 子类。RendererBase 子类。

注释

此方法在 Artist 子类中被重写。

drawStyleKeys = ['default', 'steps-mid', 'steps-pre', 'steps-post', 'steps']#
drawStyles = {'default': '_draw_lines', 'steps': '_draw_steps_pre', 'steps-mid': '_draw_steps_mid', 'steps-post': '_draw_steps_post', 'steps-pre': '_draw_steps_pre'}#
fillStyles = ('full', 'left', 'right', 'bottom', 'top', 'none')#
filled_markers = ('.', 'o', 'v', '^', '<', '>', '8', 's', 'p', '*', 'h', 'H', 'D', 'd', 'P', 'X')#
get_aa()[源代码]#

get_antialiased 的别名。

get_antialiased()[源代码][源代码]#

返回是否使用抗锯齿渲染。

get_bbox()[源代码][源代码]#

获取此行的边界框。

get_c()[源代码]#

get_color 的别名。

get_color()[源代码][源代码]#

返回线条颜色。

另请参见 set_color

get_dash_capstyle()[源代码][源代码]#

返回虚线的 CapStyle

另请参见 set_dash_capstyle

get_dash_joinstyle()[源代码][源代码]#

返回虚线的 JoinStyle

另请参见 set_dash_joinstyle

get_data(orig=True)[源代码][源代码]#

将行数据作为 (xdata, ydata) 对返回。

如果 origTrue,返回原始数据。

get_drawstyle()[源代码][源代码]#

返回绘图样式。

另请参见 set_drawstyle

get_ds()[源代码]#

get_drawstyle 的别名。

get_fillstyle()[源代码][源代码]#

返回标记填充样式。

另请参见 set_fillstyle

get_gapcolor()[源代码][源代码]#

返回行间颜色。

另请参见 set_gapcolor

get_linestyle()[源代码][源代码]#

返回线型。

另请参见 set_linestyle

get_linewidth()[源代码][源代码]#

返回线条宽度,单位为点。

另见 set_linewidth

get_ls()[源代码]#

get_linestyle 的别名。

get_lw()[源代码]#

get_linewidth 的别名。

get_marker()[源代码][源代码]#

返回行标记。

另请参见 set_marker

get_markeredgecolor()[源代码][源代码]#

返回标记边缘颜色。

另请参见 set_markeredgecolor

get_markeredgewidth()[源代码][源代码]#

返回标记边缘宽度,单位为点。

另请参见 set_markeredgewidth

get_markerfacecolor()[源代码][源代码]#

返回标记面颜色。

另请参见 set_markerfacecolor

get_markerfacecoloralt()[源代码][源代码]#

返回备用标记面颜色。

另请参见 set_markerfacecoloralt

get_markersize()[源代码][源代码]#

返回标记的大小,单位为点。

另请参见 set_markersize

get_markevery()[源代码][源代码]#

返回用于标记子采样的 markevery 设置。

另请参见 set_markevery

get_mec()[源代码]#

get_markeredgecolor 的别名。

get_mew()[源代码]#

get_markeredgewidth 的别名。

get_mfc()[源代码]#

get_markerfacecolor 的别名。

get_mfcalt()[源代码]#

get_markerfacecoloralt 的别名。

get_ms()[源代码]#

get_markersize 的别名。

get_path()[源代码][源代码]#

返回与此线条关联的 Path

get_pickradius()[源代码][源代码]#

返回用于包含测试的拾取半径。

更多详情请参见 contains

get_solid_capstyle()[源代码][源代码]#

返回实线的 CapStyle

另请参见 set_solid_capstyle

get_solid_joinstyle()[源代码][源代码]#

返回实线的 JoinStyle

另请参见 set_solid_joinstyle

get_window_extent(renderer=None)[源代码][源代码]#

获取艺术家在显示空间中的边界框。

边界框的宽度和高度是非负的。

子类应重写以包含在边界框“紧”计算中。默认是返回一个位于 0, 0 的空边界框。

使用此功能时要小心,如果艺术家的窗口范围发生变化,结果将不会更新。范围可能会因变换堆栈中的任何更改而改变,例如更改轴的限制、图形大小或使用的画布(在保存图形时会这样做)。这可能导致意外行为,即交互式图形在屏幕上看起来正常,但保存时会出现错误。

get_xdata(orig=True)[源代码][源代码]#

返回 xdata。

如果 origTrue,返回原始数据,否则返回处理后的数据。

get_xydata()[源代码][源代码]#

返回 xy 数据作为一个 (N, 2) 数组。

get_ydata(orig=True)[源代码][源代码]#

返回 ydata。

如果 origTrue,返回原始数据,否则返回处理后的数据。

is_dashed()[源代码][源代码]#

返回行是否具有虚线样式。

假设自定义线型为虚线,我们不会直接检查 onoffseq

另请参见 set_linestyle

lineStyles = {'': '_draw_nothing', ' ': '_draw_nothing', '-': '_draw_solid', '--': '_draw_dashed', '-.': '_draw_dash_dot', ':': '_draw_dotted', 'None': '_draw_nothing'}#
markers = {' ': 'nothing', '': 'nothing', '*': 'star', '+': 'plus', ',': 'pixel', '.': 'point', '1': 'tri_down', '2': 'tri_up', '3': 'tri_left', '4': 'tri_right', '8': 'octagon', '<': 'triangle_left', '>': 'triangle_right', 'D': 'diamond', 'H': 'hexagon2', 'None': 'nothing', 'P': 'plus_filled', 'X': 'x_filled', '^': 'triangle_up', '_': 'hline', 'd': 'thin_diamond', 'h': 'hexagon1', 'none': 'nothing', 'o': 'circle', 'p': 'pentagon', 's': 'square', 'v': 'triangle_down', 'x': 'x', '|': 'vline', 0: 'tickleft', 1: 'tickright', 10: 'caretupbase', 11: 'caretdownbase', 2: 'tickup', 3: 'tickdown', 4: 'caretleft', 5: 'caretright', 6: 'caretup', 7: 'caretdown', 8: 'caretleftbase', 9: 'caretrightbase'}#
property pickradius#

返回用于包含测试的拾取半径。

更多详情请参见 contains

recache(always=False)[源代码][源代码]#
recache_always()[源代码][源代码]#
set(*, agg_filter=<UNSET>, alpha=<UNSET>, animated=<UNSET>, antialiased=<UNSET>, clip_box=<UNSET>, clip_on=<UNSET>, clip_path=<UNSET>, color=<UNSET>, dash_capstyle=<UNSET>, dash_joinstyle=<UNSET>, dashes=<UNSET>, data=<UNSET>, drawstyle=<UNSET>, fillstyle=<UNSET>, gapcolor=<UNSET>, gid=<UNSET>, in_layout=<UNSET>, label=<UNSET>, linestyle=<UNSET>, linewidth=<UNSET>, marker=<UNSET>, markeredgecolor=<UNSET>, markeredgewidth=<UNSET>, markerfacecolor=<UNSET>, markerfacecoloralt=<UNSET>, markersize=<UNSET>, markevery=<UNSET>, mouseover=<UNSET>, path_effects=<UNSET>, picker=<UNSET>, pickradius=<UNSET>, rasterized=<UNSET>, sketch_params=<UNSET>, snap=<UNSET>, solid_capstyle=<UNSET>, solid_joinstyle=<UNSET>, transform=<UNSET>, url=<UNSET>, visible=<UNSET>, xdata=<UNSET>, ydata=<UNSET>, zorder=<UNSET>)[源代码]#

一次性设置多个属性。

支持的属性有

属性

描述

agg_filter

一个过滤函数,它接收一个 (m, n, 3) 的浮点数数组和一个 dpi 值,并返回一个 (m, n, 3) 的数组和两个从图像左下角开始的偏移量。

alpha

标量或无

animated

布尔

抗锯齿

布尔

clip_box

BboxBase 或 None

clip_on

布尔

clip_path

补丁或(路径,变换)或无

颜色

color

dash_capstyle

CapStyle 或 {'butt', 'projecting', 'round'}

dash_joinstyle

JoinStyle 或 {'miter', 'round', 'bevel'}

虚线

浮点数序列(开/关墨水以点为单位)或(None, None)

数据

(2, N) 数组或两个一维数组

drawstyle

{'default', 'steps', 'steps-pre', 'steps-mid', 'steps-post'}, 默认值: 'default'

figure

FigureSubFigure

fillstyle

{'full', 'left', 'right', 'bottom', 'top', 'none'}

gapcolor

color or None

gid

str

in_layout

布尔

标签

对象

linestyle

{'-', '--', '-.', ':', '', (偏移, 开关序列), ...}

linewidth

浮动

标记

标记样式字符串, PathMarkerStyle

markeredgecolor

color

markeredgewidth

浮动

markerfacecolor

color

markerfacecoloralt

color

markersize

浮动

markevery

None 或 int 或 (int, int) 或 slice 或 list[int] 或 float 或 (float, float) 或 list[bool]

鼠标悬停

布尔

path_effects

AbstractPathEffect 列表

picker

float 或 callable[[Artist, Event], tuple[bool, dict]]

pickradius

浮动

光栅化

布尔

sketch_params

(scale: float, length: float, randomness: float)

snap

布尔值或无

solid_capstyle

CapStyle 或 {'butt', 'projecting', 'round'}

solid_joinstyle

JoinStyle 或 {'miter', 'round', 'bevel'}

transform

未知

url

str

可见

布尔

xdata

一维数组

ydata

一维数组

zorder

浮动

set_aa(b)[源代码]#

set_antialiased 的别名。

set_antialiased(b)[源代码][源代码]#

设置是否使用抗锯齿渲染。

参数:
b布尔
set_c(color)[源代码]#

set_color 的别名。

set_color(color)[源代码][源代码]#

设置线条的颜色。

参数:
颜色 : color颜色
set_dash_capstyle(s)[源代码][源代码]#

如果线条是 is_dashed,如何绘制端盖。

默认的线帽样式是 rcParams["lines.dash_capstyle"] (default: <CapStyle.butt: 'butt'>)。

参数:
s : CapStyle 或 {'butt', 'projecting', 'round'}CapStyle 或 {'butt', 'projecting', 'round'}
set_dash_joinstyle(s)[源代码][源代码]#

如何连接线段,如果它 is_dashed

默认的连接样式是 rcParams["lines.dash_joinstyle"] (default: <JoinStyle.round: 'round'>)。

参数:
s : JoinStyle 或 {'miter', 'round', 'bevel'}JoinStyle 或 {'miter', 'round', 'bevel'}
set_dashes(seq)[源代码][源代码]#

设置破折号序列。

破折号序列是一个由偶数个浮点数组成的序列,描述了破折号和空格的长度,单位为点。

例如,(5, 2, 1, 2) 描述了一个由5点、1点虚线和2点间隔组成的序列。

另请参见 set_gapcolor,它允许用颜色填充这些空白。

参数:
seq浮点数序列(开/关墨水以点为单位)或(None, None)

如果 seq 为空或 (None, None),线条样式将被设置为实线。

set_data(*args)[源代码][源代码]#

设置 x 和 y 数据。

参数:
*args(2, N) 数组或两个一维数组
set_drawstyle(drawstyle)[源代码][源代码]#

设置绘图的绘制样式。

drawstyle 决定了点如何连接。

参数:
drawstyle{'default', 'steps', 'steps-pre', 'steps-mid', 'steps-post'}, 默认值: 'default'

对于 'default',点是用直线连接的。

步骤变体用阶梯状的线条连接点,即带有垂直台阶的水平线。它们在台阶的位置上有所不同:

  • 'steps-pre': 该步骤位于线段的开头,即线条将在右侧点的y值处。

  • 'steps-mid': 步骤位于两点之间的一半位置。

  • 'steps-post: 该步骤位于线段的末端,即线条将位于左侧点的y值处。

  • 'steps' 等于 'steps-pre',并为了向后兼容而保留。

例如,请参见 步骤演示

set_ds(drawstyle)[源代码]#

set_drawstyle 的别名。

set_fillstyle(fs)[源代码][源代码]#

设置标记填充样式。

参数:
fs{'full', 'left', 'right', 'bottom', 'top', 'none'}

可能的值:

  • 'full': 用 markerfacecolor 填充整个标记。

  • 'left', 'right', 'bottom', 'top': 在给定的边填充标记的一半,使用 markerfacecolor。标记的另一半使用 markerfacecoloralt 填充。

  • 'none': 无填充。

有关示例,请参见 标记填充样式

set_gapcolor(gapcolor)[源代码][源代码]#

设置一个颜色来填充虚线样式中的间隙。

备注

条纹线是通过绘制两条交错的虚线创建的。这两条线之间可能会有重叠,在使用透明度时可能会导致瑕疵。

此功能是实验性的,可能会发生变化。

参数:
gapcolor颜色 或 无

用于填充间隙的颜色。如果为 None,则间隙不填充。

set_linestyle(ls)[源代码][源代码]#

设置线条的线型。

参数:
ls{'-', '--', '-.', ':', '', (偏移, 开关序列), ...}

可能的值:

  • 一个字符串:

    线条样式

    描述

    '-''solid'

    实线

    '--''dashed'

    虚线

    '-.''dashdot'

    虚线点线

    ':''dotted'

    虚线

    'none', 'None', ' ', 或 ''

    不绘制任何内容

  • 或者可以提供以下形式的破折号元组:

    (offset, onoffseq)
    

    其中 onoffseq 是一个由点和墨水长度组成的偶数长度的元组。另请参见 set_dashes()

例如,请参见 线条样式

set_linewidth(w)[源代码][源代码]#

设置行宽为点数。

参数:
w浮动

线条宽度,以点为单位。

set_ls(ls)[源代码]#

set_linestyle 的别名。

set_lw(w)[源代码]#

set_linewidth 的别名。

set_marker(marker)[源代码][源代码]#

设置行标记。

参数:
marker : 标记样式字符串, PathMarkerStyle标记样式字符串,

有关可能参数的完整描述,请参见 markers

set_markeredgecolor(ec)[源代码][源代码]#

设置标记边缘颜色。

参数:
ec颜色
set_markeredgewidth(ew)[源代码][源代码]#

设置标记边缘的宽度,单位为点。

参数:
ew浮动

标记边缘宽度,以点为单位。

set_markerfacecolor(fc)[源代码][源代码]#

设置标记面颜色。

参数:
fc颜色
set_markerfacecoloralt(fc)[源代码][源代码]#

设置备用标记面颜色。

参数:
fc颜色
set_markersize(sz)[源代码][源代码]#

设置标记的大小(以点为单位)。

参数:
sz浮动

标记大小,以点为单位。

set_markevery(every)[源代码][源代码]#

在使用标记时,设置 markevery 属性以对绘图进行子采样。

例如,如果 every=5,则每隔第5个标记将被绘制。

参数:
每个None 或 int 或 (int, int) 或 slice 或 list[int] 或 float 或 (float, float) 或 list[bool]

要绘制的标记。

  • every=None: 每个点都将被绘制。

  • every=N: 从标记0开始,每隔N个标记将被绘制。

  • every=(start, N): 从索引 start 开始,每隔 N 个标记将被绘制。

  • every=slice(start, end, N): 从索引 start 开始,到但不包括索引 end 结束,每隔第 N 个标记将被绘制。

  • every=[i, j, m, ...]: 仅在给定索引处的标记将被绘制。

  • every=[True, False, True, ...]: 只有值为 True 的位置会被绘制。列表的长度必须与数据点的数量相同。

  • every=0.1,(即一个浮点数):标记将沿着线条大致等距分布;标记之间的线条距离是通过将Axes边界框对角线的显示坐标距离乘以*every*的值来确定的。

  • every=(0.5, 0.1) (即长度为2的浮点数元组): 类似于 every=0.1,但第一个标记将沿线的显示坐标对角距离偏移0.5倍。

例如,请参见 Markevery 演示

注释

设置 markevery 仍然只会在实际数据点上绘制标记。虽然浮点参数形式旨在实现均匀的视觉间距,但它必须从理想的间距强制转换到最近可用的数据点。根据数据点的数量和分布,结果可能看起来仍然不均匀。

当使用起始偏移量来指定第一个标记时,偏移量将从第一个数据点开始计算,如果图表已缩放,这可能与第一个可见数据点不同。

如果在使用浮点参数时放大图表,那么实际具有标记的数据点将会改变,因为标记之间的距离总是根据显示坐标轴边界框对角线来确定的,而不管实际的轴数据限制如何。

set_mec(ec)[源代码]#

set_markeredgecolor 的别名。

set_mew(ew)[源代码]#

set_markeredgewidth 的别名。

set_mfc(fc)[源代码]#

set_markerfacecolor 的别名。

set_mfcalt(fc)[源代码]#

set_markerfacecoloralt 的别名。

set_ms(sz)[源代码]#

set_markersize 的别名。

set_picker(p)[源代码][源代码]#

设置行的事件选择器详细信息。

参数:
pfloat 或 callable[[Artist, Event], tuple[bool, dict]]

如果是一个浮点数,它将作为以点为单位的拾取半径使用。

set_pickradius(pickradius)[源代码][源代码]#

设置用于包含测试的拾取半径。

更多详情请参见 contains

参数:
pickradius浮动

选择半径,以点为单位。

set_solid_capstyle(s)[源代码][源代码]#

如何在直线为实线时绘制端盖(非 is_dashed

默认的线帽样式是 rcParams["lines.solid_capstyle"] (default: <CapStyle.projecting: 'projecting'>)。

参数:
s : CapStyle 或 {'butt', 'projecting', 'round'}CapStyle 或 {'butt', 'projecting', 'round'}
set_solid_joinstyle(s)[源代码][源代码]#

如果线条是实线(不是 is_dashed),如何连接线段。

默认的连接样式是 rcParams["lines.solid_joinstyle"] (default: <JoinStyle.round: 'round'>)。

参数:
s : JoinStyle 或 {'miter', 'round', 'bevel'}JoinStyle 或 {'miter', 'round', 'bevel'}
set_transform(t)[源代码][源代码]#

设置艺术家变换。

参数:
t转换
set_xdata(x)[源代码][源代码]#

设置 x 的数据数组。

参数:
x一维数组
set_ydata(y)[源代码][源代码]#

设置 y 的数据数组。

参数:
y一维数组
update_from(other)[源代码][源代码]#

other 复制属性到自身。

zorder = 2#

使用 matplotlib.lines.Line2D 的示例#

时间序列的自定义刻度格式化器

Custom tick formatter for time series