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.DataFameили структурированный массив 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 и свойств линий необходимы только если вы хотите явно отклониться от этих значений по умолчанию. В качестве альтернативы, вы также можете изменить цикл стилей с помощью параметра 'axes.prop_cycle' rcParam.
Параметры: -
x, y : array-like or scalar -
Горизонтальные/вертикальные координаты точек данных. Значения x необязательны и по умолчанию равны
range(len(y)).Обычно эти параметры представляют собой одномерные массивы.
Они также могут быть скалярами или двумерными (в этом случае столбцы представляют отдельные наборы данных).
Эти аргументы нельзя передавать в качестве ключевых.
-
fmt : str, optional -
Строка формата, например, 'ro' для красных кружков. Подробное описание строк формата см. в разделе Примечания.
Строки формата — это просто сокращение для быстрого задания основных свойств линии. Все эти и другие свойства также можно контролировать с помощью ключевых аргументов.
Этот аргумент нельзя передавать в качестве ключевого.
-
data : indexable object, optional -
Объект с метками данных. Если он задан, укажите имена меток для построения в x и y.
Примечание
Технически в вызовах, где вторая метка является допустимым fmt, существует небольшая неоднозначность.
plot('n', 'o', data=obj)может бытьplt(x, y)илиplt(y, fmt). В таких случаях выбирается первое толкование, но выводится предупреждение. Вы можете подавить предупреждение, добавив пустую строку форматаplot('n', 'o', '', data=obj).
Возвращает: - lines
-
Список объектов
Line2D, представляющих нарисованные данные.
-
Другие параметры: -
scalex, scaley : bool, optional, default: True -
Эти параметры определяют, адаптируются ли пределы отображения к пределам данных. Значения передаются в
autoscale_view. -
**kwargs : Line2D 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')
Если вы создаёте несколько линий одной командой построения графика, kwargs применяются ко всем этим линиям.
Вот список доступных свойств
Line2D:Свойство Описание agg_filterфункция фильтра, которая принимает массив float (m, n, 3) и значение dpi, и возвращает массив (m, n, 3) alphafloat animatedbool antialiasedили aabool clip_boxBboxclip_onbool clip_path[( Path,Transform) |Patch| None]colorили cцвет containsвызываемая функция dash_capstyle{'butt', 'round', 'projecting'} dash_joinstyle{'miter', 'round', 'bevel'} dashesпоследовательность чисел с плавающей точкой (чернила включения/выключения в точках) или (None, None) drawstyleили ds{'default', 'steps', 'steps-pre', 'steps-mid', 'steps-post'}, по умолчанию: 'default' figureFigurefillstyle{'full', 'left', 'right', 'bottom', 'top', 'none'} gidstr in_layoutbool labelобъект linestyleили ls{'-', '--', '-.', ':', '', (смещение, последовательность включения/выключения), ...} linewidthили lwfloat markerстиль маркера markeredgecolorили mecцвет markeredgewidthили mewfloat markerfacecolorили mfcцвет markerfacecoloraltили mfcaltцвет markersizeили msfloat markeveryNone или int или (int, int) или срез или список [int] или float или (float, float) path_effectsAbstractPathEffectpickerfloat или вызываемая функция [[Artist, Event], Tuple[bool, dict]] pickradiusfloat rasterizedbool или None sketch_params(масштаб: float, длина: float, случайность: float) snapbool или None solid_capstyle{'butt', 'round', 'projecting'} solid_joinstyle{'miter', 'round', 'bevel'} transformmatplotlib.transforms.Transformurlstr visiblebool xdataодномерный массив ydataодномерный массив zorderfloat
-
См. также
-
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'маркер 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–2018 Matplotlib Development Team. All rights reserved.
Licensed under the Matplotlib License Agreement.
https://matplotlib.org/3.1.1/api/_as_gen/matplotlib.axes.Axes.plot.html