matplotlib.axes.Axes.plot
- Axes.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:
-
Свойство
Описание
функция фильтра, которая принимает массив чисел с плавающей точкой (m, n, 3) и значение dpi, и возвращает массив чисел с плавающей точкой (m, n, 3)
скаляр или None
bool
antialiasedили aabool
bool
Объект Patch или (объект Path, трансформация) или None
colorили cцвет
CapStyleили {'butt', 'projecting', 'round'}JoinStyleили {'miter', 'round', 'bevel'}последовательность чисел с плавающей точкой (чернила/пробелы в точках) или (None, None)
массив (2, N) или два одномерных массива
drawstyleили ds{'default', 'steps', 'steps-pre', 'steps-mid', 'steps-post'}, по умолчанию: 'default'
{'full', 'left', 'right', 'bottom', 'top', 'none'}
строка
bool
объект
linestyleили ls{'-', '--', '-.', ':', '', (смещение, последовательность включения/выключения), ...}
linewidthили lwчисло с плавающей точкой
строка стиля маркера,
PathилиMarkerStylemarkeredgecolorили mecцвет
markeredgewidthили mewчисло с плавающей точкой
markerfacecolorили mfcцвет
markerfacecoloraltили mfcaltцвет
markersizeили msчисло с плавающей точкой
None или целое число или (целое число, целое число) или срез или список целых чисел или число с плавающей точкой или (число с плавающей точкой, число с плавающей точкой) или список булевых значений
число с плавающей точкой или вызываемый объект [[Artist, Event], кортеж[bool, словарь]]
число с плавающей точкой
bool
(масштаб: число с плавающей точкой, длина: число с плавающей точкой, случайность: число с плавающей точкой)
bool или None
CapStyleили {'butt', 'projecting', 'round'}JoinStyleили {'miter', 'round', 'bevel'}неизвестно
строка
bool
одномерный массив
одномерный массив
число с плавающей точкой
См. также
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
'8'маркер восьмиугольника
's'маркер квадрата
'p'маркер пятиугольника
'P'маркер плюс (заполненный)
'*'маркер звезды
'h'маркер шестиугольника1
'H'маркер шестиугольника2
'+'маркер плюс
'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.axes.Axes.plot
© 2012–2021 Matplotlib Development Team. All rights reserved.
Licensed under the Matplotlib License Agreement.
https://matplotlib.org/3.5.1/api/_as_gen/matplotlib.axes.Axes.plot.html