Spec-Zone.ru › Matplotlib 3.5

matplotlib.pyplot.plot

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

Построение графика y по x в виде линий и/или маркеров.

Варианты вызова:

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

Координаты точек или узлов линии задаются параметрами x и y.

Необязательный параметр 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']). Вместо задания данных в x и y, можно передать объект в параметр data и указать только метки для x и y:

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

Поддерживаются все индексируемые объекты. Это может быть, например, dict, pandas.DataFrame или структурированный массив NumPy.

Построение нескольких наборов данных

Существует несколько способов построения нескольких наборов данных.

  • Наиболее простой способ — вызывать plot несколько раз. Пример:

    >>> plot(x1, y1, 'bo')
    >>> plot(x2, y2, 'go')
    
  • Если x и/или y являются двумерными массивами, для каждого столбца будет построен отдельный набор данных. Если и x, и y являются двумерными, они должны иметь одинаковую форму. Если только один из них является двумерным с формой (N, m), другой должен иметь длину N и будет использоваться для каждого набора данных m.

    Пример:

    >>> x = [1, 2, 3]
    >>> y = np.array([[1, 2], [3, 4], [5, 6]])
    >>> plot(x, y)
    

    эквивалентно:

    >>> for col in range(y.shape[1]):
    ...     plot(x, y[:, col])
    
  • Третий способ — указать несколько наборов [x], y, [fmt]:

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

    В этом случае все дополнительные ключевые аргументы применяются ко всем наборам данных. Кроме того, этот синтаксис не может быть объединен с параметром data.

По умолчанию каждой линии присваивается другой стиль, заданный циклом стилей. Параметры fmt и свойства линии необходимы только если требуется явно отойти от этих значений по умолчанию. В качестве альтернативы можно также изменить цикл стилей, используя rcParams["axes.prop_cycle"] (по умолчанию: cycler('color', ['#1f77b4', '#ff7f0e', '#2ca02c', '#d62728', '#9467bd', '#8c564b', '#e377c2', '#7f7f7f', '#bcbd22', '#17becf'])).

Параметры
x, yмассив-подобный объект или скаляр

Горизонтальные / вертикальные координаты точек данных. Значения x необязательны и по умолчанию равны range(len(y)).

Обычно эти параметры являются одномерными массивами.

Они также могут быть скалярами или двумерными (в этом случае столбцы представляют отдельные наборы данных).

Эти аргументы не могут быть переданы в качестве ключевых.

fmtстрока, необязательно

Строка форматирования, например, 'ro' для красных кружков. Полное описание строк форматирования см. в разделе Примечания.

Строки форматирования — это просто сокращение для быстрого задания основных свойств линий. Все эти свойства и многие другие также можно контролировать с помощью ключевых аргументов.

Этот аргумент не может быть передан как ключевой.

dataиндексируемый объект, необязательно

Объект с данными, имеющими метки. Если задан, укажите имена меток для построения графиков в x и y.

Примечание

Технически существует небольшая неоднозначность в вызовах, где вторая метка является допустимым fmt. plot('n', 'o', data=obj) может быть plt(x, y) или plt(y, fmt). В таких случаях выбирается первое толкование, но выводится предупреждение. Вы можете подавить предупреждение, добавив пустую строку форматирования plot('n', 'o', '', data=obj).

Возвращаемое значение
список Line2D

Список линий, представляющих построенные данные.

Дополнительные параметры
scalex, scaleybool, по умолчанию: True

Эти параметры определяют, будут ли пределы отображения адаптированы к пределам данных. Значения передаются в autoscale_view.

**kwargsсвойства Line2D, необязательно

kwargs используются для задания свойств, таких как метка линии (для автоматических легенд), толщина линии, антиалиасинг, цвет заливки маркера. Пример:

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

Если вы задаете несколько линий с помощью одного вызова plot, kwargs применяются ко всем этим линиям. В случае, если объект метки является итерируемым, каждый элемент используется как метки для каждого набора данных.

Вот список доступных свойств Line2D:

Свойство

Описание

agg_filter

функция фильтра, которая принимает массив float (m, n, 3) и значение dpi, и возвращает массив (m, n, 3)

alpha

скаляр или None

animated

bool

antialiased или aa

bool

clip_box

Bbox

clip_on

bool

clip_path

Объект Patch или (Path, Transform) или None

color или c

цвет

dash_capstyle

CapStyle или {'butt', 'projecting', 'round'}

dash_joinstyle

JoinStyle или {'miter', 'round', 'bevel'}

dashes

последовательность чисел с плавающей точкой (цвет/отступ в пунктах) или (None, None)

data

массив (2, N) или два одномерных массива

drawstyle или ds

{'default', 'steps', 'steps-pre', 'steps-mid', 'steps-post'}, по умолчанию: 'default'

figure

Figure

fillstyle

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

gid

строка

in_layout

bool

label

объект

linestyle или ls

{'-', '--', '-.', ':', '', (offset, on-off-seq), ...}

linewidth или lw

вещественное число

marker

строка стиля маркера, Path или MarkerStyle

markeredgecolor или mec

цвет

markeredgewidth или mew

вещественное число

markerfacecolor или mfc

цвет

markerfacecoloralt или mfcalt

цвет

markersize или ms

вещественное число

markevery

None или int или (int, int) или срез или список[int] или вещественное число или (вещественное число, вещественное число) или список[bool]

path_effects

AbstractPathEffect

picker

вещественное число или вызываемая функция[[Artist, Event], tuple[bool, dict]]

pickradius

вещественное число

rasterized

bool

sketch_params

(масштаб: вещественное число, длина: вещественное число, случайность: вещественное число)

snap

bool или None

solid_capstyle

CapStyle или {'butt', 'projecting', 'round'}

solid_joinstyle

JoinStyle или {'miter', 'round', 'bevel'}

transform

неизвестно

url

строка

visible

bool

xdata

одномерный массив

ydata

одномерный массив

zorder

вещественное число

См. также

scatter

Диаграмма рассеяния точек в системе координат XY с маркерами различного размера и/или цвета (иногда также называется диаграммой пузырьков).

Примечания

Строки форматирования

Строка форматирования состоит из части для цвета, маркера и линии:

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

Каждая из них является необязательной. Если не указано, используется значение из цикла стилей. Исключение: Если line указано, но нет marker, данные будут представлять линию без маркеров.

Поддерживаются и другие комбинации, такие как [color][marker][line], но обратите внимание, что их разбор может быть неоднозначным.

Маркеры

символ

описание

'.'

маркер точки

','

маркер пикселя

'o'

маркер круга

'v'

маркер треугольника вниз

'^'

маркер треугольника вверх

'<'

маркер треугольника влево

'>'

маркер треугольника вправо

'1'

маркер три_вниз

'2'

маркер три_вверх

'3'

маркер три_влево

'4'

маркер три_вправо

'8'

маркер восьмиугольника

's'

маркер квадрата

'p'

маркер пятиугольника

'P'

маркер плюс (заполненный)

'*'

маркер звезды

'h'

маркер шестиугольник1

'H'

маркер шестиугольник2

'+'

маркер плюс

'x'

маркер икс

'X'

маркер икс (заполненный)

'D'

маркер ромба

'd'

маркер тонкий ромб

'|'

маркер вертикальная линия

'_'

маркер горизонтальная линия

Стилевые оформления линий

символ

описание

'-'

сплошная линия

'--'

пунктирная линия

'-.'

штрихпунктирная линия

':'

точковая линия

Примеры строк форматирования:

'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

Цвета

Поддерживаемые сокращения цветов — это однобуквенные коды:

символ

цвет

'b'

синий

'g'

зеленый

'r'

красный

'c'

голубой

'm'

пурпурный

'y'

желтый

'k'

черный

'w'

белый

и 'CN' цвета, которые индексируют в цикле свойств по умолчанию.

Если цвет — единственная часть строки форматирования, вы также можете использовать любой matplotlib.colors спецификатор, например, полные имена ('green') или шестнадцатеричные строки ('#008000').

Примеры использования matplotlib.pyplot.plot

Plotting masked and NaN values

Построение данных с масками и NaN значениями

Scatter Masked

Маска точек рассеяния

Stairs Demo

Демонстрация ступенчатых функций

Step Demo

Демонстрация ступенчатых кривых

Custom Figure subclasses

Настраиваемые подклассы Figure

Managing multiple figures in pyplot

Управление несколькими фигурами в pyplot

Shared Axis

Общие оси

Multiple subplots

Несколько подграфиков

Controlling style of text and labels using a dictionary

Настройка стиля текста и меток с помощью словаря

Title positioning

Расположение заголовка

Infinite lines

Бесконечные линии

plot() format string

Строка формата plot()

Pyplot Mathtext

Pyplot Mathtext

Pyplot Simple

Простой Pyplot

Pyplot Three

Pyplot Три

Pyplot Two Subplots

Pyplot Два подграфика

Dolphins

Дельфины

Solarized Light stylesheet

Стиль таблицы Solarized Light

Frame grabbing

Захват кадров

Coords Report

Отчет о координатах

Customize Rc

Настройка параметров Rc

Findobj Demo

Демонстрация findobj

Multipage PDF

Многостраничный PDF

Print Stdout

Вывод в стандартный поток

Set and get properties

Установка и получение свойств

transforms.offset_copy

transforms.offset_copy

Zorder Demo

Демонстрация zorder

Custom scale

Пользовательская шкала

Placing date ticks using recurrence rules

Установка меток дат с помощью правил повторения

Rotating custom tick labels

Поворот пользовательских меток

Tool Manager

Менеджер инструментов

Buttons

Кнопки

Slider

Ползунок

Snapping Sliders to Discrete Values

Фиксация значений ползунка на дискретных значениях

Basic Usage

Основное использование

Pyplot tutorial

Руководство по pyplot

Customizing Matplotlib with style sheets and rcParams

Настройка Matplotlib с помощью стилей и rcParams

Path effects guide

Руководство по эффектам траектории

© 2012–2021 Matplotlib Development Team. All rights reserved.
Licensed under the Matplotlib License Agreement.
https://matplotlib.org/3.5.1/api/_as_gen/matplotlib.pyplot.plot.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API