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.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 и свойств линии необходимы только если нужно явно отклониться от этих значений по умолчанию. Кроме того, можно изменить цикл стилей, используя параметр rcParam «axes.prop_cycle».
Параметры: -
x, y : array-like or scalar -
Горизонтальные/вертикальные координаты точек данных. Значения x необязательны. Если они не указаны, они по умолчанию равны
[0, ..., N-1].Обычно эти параметры представляют собой массивы длиной N. Однако поддерживаются и скаляры (эквивалентно массиву с постоянным значением).
Параметры также могут быть двумерными. Тогда столбцы представляют отдельные наборы данных.
-
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')
Если вы создаёте несколько линий одной командой plot, kwargs применяются ко всем этим линиям.
Вот список доступных свойств
Line2D:Свойство Описание agg_filterфункция фильтра, которая принимает массив float (m, n, 3) и значение dpi, и возвращает массив (m, n, 3) alphafloat animatedbool antialiasedbool clip_boxBboxclip_onbool clip_path[( Path,Transform) |Patch| None]colorцвет containsфункция dash_capstyle{'butt', 'round', 'projecting'} dash_joinstyle{'miter', 'round', 'bevel'} dashesпоследовательность чисел с плавающей точкой (чернила включения/выключения в точках) или (None, None) drawstyle{'default', 'steps', 'steps-pre', 'steps-mid', 'steps-post'} figureFigurefillstyle{'full', 'left', 'right', 'bottom', 'top', 'none'} gidстрока in_layoutbool labelобъект linestyle{'-', '--', '-.', ':', '', (смещение, последовательность включения/выключения), ...} linewidthfloat markerнеизвестно markeredgecolorцвет markeredgewidthfloat markerfacecolorцвет markerfacecoloraltцвет markersizefloat markeveryнеизвестно 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.Transform urlстрока visiblebool xdataодномерный массив ydataодномерный массив zorderfloat
См. также
-
scatter - Диаграмма рассеяния XY с маркерами различного размера и/или цвета (иногда также называется диаграммой пузырьков).
Примечания
Строки формата
Строка формата состоит из части для цвета, маркера и линии:
-
-
fmt = '[color][marker][line]'
Каждый из них является необязательным. Если не указано, используется значение из цикла стилей. Исключение: если
lineзадано, но нетmarker, данные будут выведены в строку без маркеров.Цвета
Поддерживаются следующие сокращения цветов:
символ цвет 'b'синий 'g'зелёный 'r'красный 'c'голубой 'm'пурпурный 'y'жёлтый 'k'чёрный 'w'белый Если цвет — единственная часть строки формата, вы также можете использовать любой
matplotlib.colorsспецификатор, например, полные имена ('green') или шестнадцатеричные строки ('#008000').Маркеры
символ описание '.'маркер точки ','маркер пикселя '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 'ro' # red circles 'g-' # green solid line '--' # dashed line with default color 'k^:' # black triangle_up markers connected by a dotted line
Примечание
В дополнение к вышеописанным аргументам, эта функция может принять аргумент data. Если такой аргумент data задан, следующие аргументы заменяются на data[<arg>]:
- Все аргументы с именами 'x', 'y'.
Объекты, передаваемые как data, должны поддерживать доступ к элементам (
data[<arg>]) и проверку на принадлежность (<arg> in data).
Примеры использования matplotlib.axes.Axes.plot
© 2012–2018 Matplotlib Development Team. All rights reserved.
Licensed under the Matplotlib License Agreement.
https://matplotlib.org/3.0.0/api/_as_gen/matplotlib.axes.Axes.plot.html