Spec-Zone.ru › Matplotlib

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 являются 2D массивами, для каждой колонки будет нарисован отдельный набор данных. Если и x, и y являются 2D массивами, они должны иметь одинаковую форму. Если только один из них является 2D массивом с формой (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)).

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

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

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

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.

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

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

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

alpha

скаляр или None

animated

логическое значение

antialiased или aa

логическое значение

clip_box

BboxBase или None

clip_on

логическое значение

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'}

gapcolor

цвет или None

gid

строка

in_layout

логическое значение

label

объект

linestyle или ls

{'-', '--', '-.', ':', '', (смещение, последовательность вкл/выкл), ...}

linewidth или lw

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

marker

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

markeredgecolor или mec

цвет

markeredgewidth или mew

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

markerfacecolor или mfc

цвет

markerfacecoloralt или mfcalt

цвет

markersize или ms

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

markevery

None или целое число или (целое число, целое число) или срез или список целых чисел или вещественное число или (вещественное число, вещественное число) или список булевых значений

mouseover

логическое значение

path_effects

список AbstractPathEffect

picker

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

pickradius

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

rasterized

логическое значение

sketch_params

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

snap

логическое значение или None

solid_capstyle

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

solid_joinstyle

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

transform

неизвестно

url

строка

visible

логическое значение

xdata

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

ydata

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

zorder

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

См. также

scatter

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

Примечания

Примечание

Это обертка pyplot для axes.Axes.plot.

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

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

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

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

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

Маркеры

символ

описание

'.'

маркер точки

','

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

'o'

маркер круга

'v'

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

'^'

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

'<'

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

'>'

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

'1'

маркер tri_down

'2'

маркер tri_up

'3'

маркер tri_left

'4'

маркер tri_right

'8'

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

's'

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

'p'

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

'P'

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

'*'

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

'h'

маркер hexagon1

'H'

маркер hexagon2

'+'

маркер плюс

'x'

маркер x

'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

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

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

Разброс с масками

Разброс с масками

Простой график

Простой график

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

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

Демонстрация функции step

Демонстрация функции step

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

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

Пользовательские подклассы Figure

Пользовательские подклассы Figure

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

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

Общие оси

Общие оси

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

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

Полярный график

Полярный график

Полярная легенда

Полярная легенда

Выравнивание меток y

Выравнивание меток y

Легенда с предварительно определёнными метками

Легенда с предварительно определёнными метками

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

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

Позиционирование заголовков

Позиционирование заголовков

Цвет по значению y

Цвет по значению y

Дельфины

Дельфины

Стиль "Solarized Light"

Стиль "Solarized Light"

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

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

Простой график

Простой график

Текст и mathtext с использованием pyplot

Текст и mathtext с использованием pyplot

Несколько линий с использованием pyplot

Несколько линий с использованием pyplot

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

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

Извлечение кадров

Извлечение кадров

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

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

Настройка Rc

Настройка Rc

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

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

PDF с несколькими страницами

PDF с несколькими страницами

Печать в стандартный вывод

Печать в стандартный вывод

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

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

transforms.offset_copy

transforms.offset_copy

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

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

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

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

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

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

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

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

Диспетчер инструментов

Диспетчер инструментов

Учебник по Pyplot

Учебник по Pyplot

Руководство по быстрому запуску

Руководство по быстрому запуску

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

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

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

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

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

Spec-Zone.ru

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