matplotlib.axes.Axes.plot
-
Axes.plot(self, *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. Для каждого столбца будет нарисован отдельный набор данных.
Пример: массив
a, где первый столбец представляет значения x, а остальные столбцы — столбцы y:>>> plot(a[0], a[1:])
-
Третий способ — указать несколько наборов [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, yarray-like or scalar -
Горизонтальные/вертикальные координаты точек данных. Значения x необязательны и по умолчанию равны
range(len(y)).Обычно эти параметры — одномерные массивы.
Они также могут быть скалярами или двумерными (в этом случае столбцы представляют отдельные наборы данных).
Эти аргументы не могут быть переданы как ключевые.
-
fmtstr, optional -
Строка формата, например, 'ro' для красных кружков. Подробное описание строк формата приведено в разделе Замечания.
Строки формата — просто сокращения для быстрого задания основных свойств линии. Все эти и другие свойства также можно задать с помощью ключевых аргументов.
Этот аргумент не может быть передан как ключевой.
-
dataindexable object, optional -
Объект с метками данных. Если указан, предоставьте имена меток для построения в x и y.
Примечание
Технически существует небольшая неоднозначность в вызовах, где вторая метка является допустимым fmt.
plot('n', 'o', data=obj)может бытьplt(x, y)илиplt(y, fmt). В таких случаях выбирается первое толкование, но выдается предупреждение. Вы можете подавить предупреждение, добавив пустую строку форматаplot('n', 'o', '', data=obj).
Возвращает: -
list ofLine2D -
Список линий, представляющих построенные данные.
-
Дополнительные параметры: -
scalex, scaleybool, default: True -
Эти параметры определяют, будут ли пределы просмотра адаптированы к пределам данных. Значения передаются в
autoscale_view. -
**kwargsLine2D properties, optional -
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, и возвращает массив float (m, n, 3) alphafloat или None animatedbool antialiasedили aabool clip_boxBboxclip_onbool clip_pathPatch или (Path, Transform) или None colorили cцвет containsнеизвестно dash_capstyle{'butt', 'round', 'projecting'} dash_joinstyle{'miter', 'round', 'bevel'} dashesпоследовательность чисел с плавающей точкой (чернила включены/выключены в точках) или (None, None) dataмассив (2, N) или два одномерных массива drawstyleили ds{'default', 'steps', 'steps-pre', 'steps-mid', 'steps-post'}, по умолчанию: 'default' figureFigurefillstyle{'full', 'left', 'right', 'bottom', 'top', 'none'} gidстрока in_layoutbool labelобъект linestyleили ls{'-', '--', '-.', ':', '', (смещение, последовательность включения/выключения), ...} linewidthили lwчисло с плавающей точкой markerстрока стиля маркера, PathилиMarkerStylemarkeredgecolorили mecцвет markeredgewidthили mewчисло с плавающей точкой markerfacecolorили mfcцвет markerfacecoloraltили mfcaltцвет markersizeили msчисло с плавающей точкой markeveryNone или int или (int, int) или срез или список [int] или число с плавающей точкой или (число с плавающей точкой, число с плавающей точкой) или список [bool] path_effectsAbstractPathEffectpickerнеизвестно pickradiusчисло с плавающей точкой rasterizedbool или None sketch_params(масштаб: число с плавающей точкой, длина: число с плавающей точкой, случайность: число с плавающей точкой) snapbool или None solid_capstyle{'butt', 'round', 'projecting'} solid_joinstyle{'miter', 'round', 'bevel'} transformmatplotlib.transforms.Transformurlстрока visiblebool xdataодномерный массив ydataодномерный массив zorderчисло с плавающей точкой
-
См. также
-
scatter - Диаграмма рассеяния XY с маркерами различного размера и/или цвета (иногда также называется диаграммой пузырьков).
Примечания
Строки форматирования
Строка форматирования состоит из части для цвета, маркера и линии:
fmt = '[marker][line][color]'
Каждая из них является необязательной. Если не указано, используется значение из цикла стилей. Исключение: если указано
line, но нетmarker, данные будут представлять линию без маркеров.Также поддерживаются другие комбинации, такие как
[color][marker][line], но обратите внимание, что их разбор может быть неоднозначным.Маркеры
символ описание '.'маркер точки ','маркер пикселя 'o'маркер круга 'v'маркер треугольника вниз '^'маркер треугольника вверх '<'маркер треугольника влево '>'маркер треугольника вправо '1'маркер tri_down '2'маркер tri_up '3'маркер tri_left '4'маркер tri_right 's'маркер квадрата 'p'маркер пятиугольника '*'маркер звезды 'h'маркер шестиугольника 1 'H'маркер шестиугольника 2 '+'маркер плюса '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.axes.Axes.plot
END_OF_DOCUMENT_MARKER END_OF_DOCUMENT_MARKER END_OF_DOCUMENT_MARKER
© 2012–2018 Matplotlib Development Team. All rights reserved.
Licensed under the Matplotlib License Agreement.
https://matplotlib.org/3.3.3/api/_as_gen/matplotlib.axes.Axes.plot.html