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 применяются ко всем этим линиям. В случае, если объект label итерируемый, каждый элемент используется в качестве меток для каждого набора данных.
Вот список доступных свойств
Line2D:
-
Свойство
Описание
функция фильтра, которая принимает массив чисел с плавающей точкой (m, n, 3) и значение dpi, и возвращает массив чисел с плавающей точкой (m, n, 3) и два смещения от нижнего левого угла изображения
скаляр или None
булево значение
antialiasedили aaбулево значение
BboxBaseили Noneбулево значение
объект Patch или (Path, Transform) или None
colorили cCapStyleили {'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'}
цвет или None
строка
булево значение
объект
linestyleили ls{'-', '--', '-.', ':', '', (смещение, последовательность включения/выключения), ...}
linewidthили lwчисло с плавающей точкой
строка стиля маркера,
PathилиMarkerStylemarkeredgecolorили mecmarkeredgewidthили mewчисло с плавающей точкой
markerfacecolorили mfcmarkerfacecoloraltили mfcaltmarkersizeили msчисло с плавающей точкой
None или целое число или (целое число, целое число) или срез или список[целое число] или число с плавающей точкой или (число с плавающей точкой, число с плавающей точкой) или список[булево]
булево значение
список
AbstractPathEffectчисло с плавающей точкой или вызываемая функция[[Artist, Event], кортеж[булево, словарь]]
число с плавающей точкой
булево значение
(масштаб: число с плавающей точкой, длина: число с плавающей точкой, случайность: число с плавающей точкой)
булево значение или None
CapStyleили {'butt', 'projecting', 'round'}JoinStyleили {'miter', 'round', 'bevel'}
См. также
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'маркер hexagon1
'H'маркер hexagon2
'+'маркер плюс
'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
Сопоставление свойств маркеров с многомерными данными
Затеняйте области, определенные логической маской, используя fill_between
Создание временной шкалы с линиями, датами и текстом
Контурный график неравномерно распределенных данных
Управление пределами представления с помощью отступов и sticky_edges
Создание нескольких подграфиков с помощью plt.subplots
Отображение математических уравнений с помощью TeX
Форматирование меток дат с помощью ConciseDateFormatter
© 2012–2023 Matplotlib Development Team. All rights reserved.
Licensed under the Matplotlib License Agreement.
https://matplotlib.org/stable/api/_as_gen/matplotlib.axes.Axes.plot.html