matplotlib.pyplot.plot

matplotlib.pyplot.plot(*args, scalex=True, scaley=True, data=None, **kwargs)[源代码]

绘制Y和X作为直线和/或标记。

呼叫签名:

plot([x], y, [fmt], *, data=None, **kwargs)
plot([x], y, [fmt], [x2], y2, [fmt2], ..., **kwargs)

点或线节点的坐标由 xy .

可选参数 fmt 是定义基本格式(如颜色、标记和线条样式)的方便方法。它是在 笔记 下面部分。

>>> plot(x, y)        # plot x and y using default line style and color
>>> plot(x, y, 'bo')  # plot x and y using blue circle markers
>>> plot(y)           # plot y using x as index array 0..N-1
>>> plot(y, 'r+')     # ditto, but with red plusses

你可以使用 Line2D 属性作为关键字参数,以便对外观进行更多控制。线条属性和 fmt 可以混合。以下两个调用产生相同的结果:

>>> plot(x, y, 'go--', linewidth=2, markersize=12)
>>> plot(x, y, color='green', marker='o', linestyle='dashed',
...      linewidth=2, markersize=12)

与冲突时 fmt ,关键字参数优先。

绘制标记数据

有一种方便的方法可以用标记的数据(即可以通过索引访问的数据)绘制对象 obj['y'] )而不是提供数据 xy ,您可以在 data 参数,只需给出标签 xy ::

>>> plot('xlabel', 'ylabel', data=obj)

支持所有可索引对象。这可能是一个 dict ,A pandas.DataFrame 或者一个结构化的numpy数组。

绘制多组数据

有多种方法可以绘制多组数据。

  • 最直接的方法就是打电话 plot 多次。例子:

    >>> plot(x1, y1, 'bo')
    >>> plot(x2, y2, 'go')
    
  • 或者,如果数据已经是二维数组,则可以将其直接传递给 xy . 将为每一列绘制单独的数据集。

    示例:数组 a 其中第一列表示 x 值和其他列是 y 柱::

    >>> plot(a[0], a[1:])
    
  • 第三种方法是指定多组 [[x]] , y , [[FMT ]] 组::

    >>> plot(x1, y1, 'g^', x2, y2, 'g-')
    

    在这种情况下,任何其他关键字参数都适用于所有数据集。此外,此语法不能与 data 参数。

默认情况下,每行被分配一个由“样式循环”指定的不同样式。这个 fmt 和线特性参数只有在您想要显式偏离这些默认值时才是必需的。或者,也可以使用 rcParams["axes.prop_cycle"] (default: cycler('color', ['#1f77b4', '#ff7f0e', '#2ca02c', '#d62728', '#9467bd', '#8c564b', '#e377c2', '#7f7f7f', '#bcbd22', '#17becf'])) .

参数:
x, y数组或标量

数据点的水平/垂直坐标。 x 值是可选的,默认为 range(len(y)) .

通常,这些参数是一维数组。

它们也可以是标量,也可以是二维的(在这种情况下,列表示单独的数据集)。

这些参数不能作为关键字传递。

fmt可选的STR

格式字符串,例如红色圆圈的“ro”。见 笔记 节以获取格式字符串的完整描述。

格式字符串只是快速设置基本行属性的缩写。所有这些以及更多的都可以由关键字参数控制。

此参数不能作为关键字传递。

data可索引对象,可选

带有标签数据的对象。如果给定,请提供要打印的标签名称 xy .

注解

从技术上讲,如果第二个标签是有效的,那么在调用中有一点含糊不清。 fmt . plot('n', 'o', data=obj) 可以是 plt(x, y)plt(y, fmt) . 在这种情况下,将选择以前的解释,但会发出警告。可以通过添加空格式字符串来取消警告 plot('n', 'o', '', data=obj) .

返回:
名单 Line2D

表示打印数据的线列表。

其他参数:
斯卡利克斯bool,默认值:True

这些参数确定视图限制是否与数据限制相适应。这些值传递给 autoscale_view .

**kwargsLine2D 属性,可选line2d属性,可选

关键字参数 用于指定线条标签(用于自动图例)、线条宽度、抗锯齿、标记面颜色等属性。例子::

>>> plot([1, 2, 3], [1, 2, 3], 'go-', label='line 1', linewidth=2)
>>> plot([1, 2, 3], [1, 4, 9], 'rs', label='line 2')

如果使用一个绘图调用生成多行,则kwargs将应用于所有这些行。

这是可用的列表 Line2D 性能:

财产 描述
agg_filter 一种过滤函数,它接受一个(m,n,3)浮点数组和一个dpi值,并返回一个(m,n,3)数组。
alpha 浮动或无
animated 布尔
antialiased 或者aa 布尔
clip_box Bbox
clip_on 布尔
clip_path 面片或(路径、变换)或无
color 或c 颜色
contains 未知的
dash_capstyle “对接”、“圆形”、“突出”
dash_joinstyle 'miter'、'round'、'bevel'
dashes 浮动顺序(点中的开/关墨迹)或(无,无)
data (2,N)阵列或两个一维阵列
drawstyle 或ds {'default','steps','steps pre','steps mid','steps post'},default:'默认'
figure Figure
fillstyle 'full'、'left'、'right'、'bottom'、'top'、'none'
gid STR
in_layout 布尔
label 对象
linestyle 或ls '-'、'-'、'-'、'-'、':'、'、'、'(偏移量、开/关顺序)、…
linewidth 或lw 浮动
marker 标记样式字符串, PathMarkerStyle
markeredgecolor 或mec 颜色
markeredgewidth 或者喵喵 浮动
markerfacecolor 或mfc 颜色
markerfacecoloralt 或mfcalt 颜色
markersize 或ms 浮动
markevery None或int or(int,int)或slice或List [int] 或float或(float,float)或List [bool]
path_effects AbstractPathEffect
picker 未知的
pickradius 浮动
rasterized 布尔或无
sketch_params (比例:浮动,长度:浮动,随机性:浮动)
snap 布尔或无
solid_capstyle “对接”、“圆形”、“突出”
solid_joinstyle 'miter'、'round'、'bevel'
transform matplotlib.transforms.Transform
url STR
visible 布尔
xdata 一维阵列
ydata 一维阵列
zorder 浮动

参见

scatter
带有不同大小和/或颜色标记的xy散点图(有时也称为气泡图)。

笔记

格式字符串

格式字符串由颜色、标记和线条部分组成:

fmt = '[marker][line][color]'

每个都是可选的。如果未提供,则使用样式周期中的值。例外:如果 line 有,但没有 marker ,数据将是没有标记的行。

其他组合,如 [color][marker][line] 也支持,但请注意,它们的解析可能不明确。

Markers

性格 描述
'.' 点标记
',' 像素标记
'o' 圆标记
'v' 三角形下标记
'^' 三角形上标记
'<' 三角形标记
'>' 三角形标记
'1' 三下标记
'2' 三重标记
'3' 三左标记
'4' 三右标记
's' 方形标记
'p' 五角大厦标志
'*' 恒星标记
'h' 六角标记
'H' 六角标记
'+' 加标记
'x' X标记
'D' 钻石标记
'd' 薄钻石标记
'|' V线标记
'_' 线性标记

线型

性格 描述
'-' 实线样式
'--' 虚线样式
'-.' 点划线样式
':' 虚线样式

格式字符串示例:

'b'    # blue markers with default shape
'or'   # red circles
'-g'   # green solid line
'--'   # dashed line with default color
'^k:'  # black triangle_up markers connected by a dotted line

Colors

支持的颜色缩写是单字母代码

性格 颜色
'b' 蓝色
'g' 绿色
'r' 红色
'c' 青色的
'm' 品红
'y' 黄色的
'k' 黑色
'w' 白色

以及 'CN' 索引到默认属性循环的颜色。

如果颜色是格式字符串的唯一部分,则可以另外使用 matplotlib.colors 规范,例如全名 ('green' )或十六进制字符串 ('#008000'