Spec-Zone.ru › Matplotlib 3.6

matplotlib.sankey

Модуль для создания диаграмм Санки с помощью Matplotlib.

classmatplotlib.sankey.Sankey(ax=None, scale=1.0, unit='', format='%G', gap=0.25, radius=0.1, shoulder=0.03, offset=0.15, head_angle=100, margin=0.4, tolerance=1e-06, **kwargs)[source]

Основания: object

Диаграмма Санки.

Диаграммы Санки — это особый тип диаграммы потоков, в которой ширина стрелок отображается пропорционально величине потока. Обычно они используются для визуализации передачи энергии, материалов или затрат между процессами. Wikipedia (6/1/2011)

Создает новый экземпляр Sankey.

Дополнительные аргументы, перечисленные ниже, применяются ко всем поддиаграммам для обеспечения согласованного выравнивания и форматирования.

Для построения сложной диаграммы Санки создайте экземпляр Sankey, вызвав его без каких-либо аргументов kwargs:

sankey = Sankey()

Затем добавьте простые поддиаграммы Санки:

sankey.add() # 1
sankey.add() # 2
#...
sankey.add() # n

Наконец, создайте полную диаграмму:

sankey.finish()

Или, вместо этого, просто свяжите эти вызовы:

Sankey().add().add...  .add().finish()
Другие параметры:
axAxes

Система координат, на которой должны быть отображены данные. Если ax не предоставлен, будет создана новая система координат.

scalefloat

Коэффициент масштабирования для потоков. scale задает ширину траекторий, чтобы сохранить правильную компоновку. Один и тот же масштаб применяется ко всем поддиаграммам. Значение должно быть выбрано таким образом, чтобы произведение масштаба и суммы входов приблизительно равнялось 1,0 (а произведение масштаба и суммы выходов приблизительно равнялось -1,0).

unitstr

Физическая единица, связанная с величинами потока. Если unit равно None, то величины никаких величин не подписываются.

formatstr или вызываемый объект

Строка форматирования чисел Python или вызываемый объект, используемый для подписи потоков с их величинами (т. е. число умножается на единицу, где единица задается). Если задана строка форматирования, подпись будет format % quantity. Если задан вызываемый объект, он будет вызываться с quantity в качестве аргумента.

gapfloat

Пробел между траекториями, которые прерываются/отходят от/к верхней или нижней части.

radiusfloat

Внутренний радиус вертикальных траекторий.

shoulderfloat

Размер плеч стрелок выхода.

offsetfloat

Смещение текста (от изгиба или наконечника стрелки).

head_anglefloat

Угол в градусах наконечников стрелок (и отрицательный угол хвостов).

marginfloat

Минимальное расстояние между контурами Санки и краем области графика.

tolerancefloat

Допустимое максимальное значение величины суммы потоков. Величина суммы соединенных потоков не может быть больше tolerance.

**kwargs

Все дополнительные аргументы keyword будут переданы в add(), что создаст первую поддиаграмму.

См. также

Sankey.add
Sankey.finish

Примеры

(Исходный код)

../_images/sankey_basics_00_00.png

(png)

../_images/sankey_basics_00_01.png

(png)

../_images/sankey_basics_00_02.png

(png)

add(patchlabel='', flows=None, orientations=None, labels='', trunklength=1.0, pathlengths=0.25, prior=None, connect=(0, 0), rotation=0, **kwargs)[source]

Добавляет простую диаграмму Санки с потоками на одном и том же уровне иерархии.

Параметры:
patchlabelstr

Метка, которая должна быть размещена в центре диаграммы. Обратите внимание, что label (а не patchlabel) может быть передан в качестве аргумента keyword для создания записи в легенде.

flowsсписок чисел с плавающей точкой

Массив значений потока. По соглашению, входы положительны, а выходы отрицательны.

Потоки располагаются по верхней части диаграммы отнутри наружу в порядке их индекса в flows. Они размещаются по сторонам диаграммы сверху вниз и по нижней части снаружи внутрь.

Если сумма входов и выходов не равна нулю, разность отобразится как кубическая кривая Безье по верхнему и нижнему краям ствола.

orientationsсписок {-1, 0, 1}

Список ориентаций потоков (или единая ориентация, которая используется для всех потоков). Допустимые значения: 0 (входы слева, выходы справа), 1 (сверху и снизу) или -1 (снизу вверх).

labelsсписок (строка или None)

Список меток для потоков (или единая метка, которая используется для всех потоков). Каждая метка может быть None (нет метки) или строкой маркировки. Если запись представляет собой (возможно, пустую) строку, то величина соответствующего потока будет показана под строкой. Однако, если unit главной диаграммы равно None, то величины никогда не отображаются, независимо от значения этого аргумента.

trunklengthfloat

Длина между основаниями групп входов и выходов (в единицах данных).

pathlengthsсписок чисел с плавающей точкой

Список длин вертикальных стрелок до разрыва или после него. Если задано одно значение, то оно будет применено к первым (внутренним) траекториям сверху и снизу, и длина всех остальных стрелок будет определена соответственно. pathlengths не применяется к горизонтальным входам и выходам.

priorint

Индекс предшествующей диаграммы, к которой должна быть подключена эта диаграмма.

connect(int, int)

Кортеж (предыдущий, текущий), индексирующий поток предыдущей диаграммы и поток этой диаграммы, которые должны быть соединены. Если это первая диаграмма или prior равно None, connect будет проигнорирован.

rotationfloat

Угол поворота диаграммы в градусах. Интерпретация аргумента orientations будет повернута соответствующим образом (например, если rotation == 90, запись orientations равной 1 означает слева/справа). rotation игнорируется, если эта диаграмма подключена к существующей (с помощью prior и connect).

Возвращаемое значение:
Sankey

Текущий экземпляр Sankey.

Другие параметры:
**kwargs

Дополнительные ключевые аргументы устанавливают свойства matplotlib.patches.PathPatch, перечисленные ниже. Например, можно использовать fill=False или label="A legend entry".

Свойство

Описание

agg_filter

функция фильтрации, которая принимает массив float (m, n, 3) и значение dpi, и возвращает массив (m, n, 3) и два смещения от нижнего левого угла изображения

alpha

неизвестно

animated

bool

antialiased или aa

bool или None

capstyle

CapStyle или {'butt', 'projecting', 'round'}

clip_box

Bbox

clip_on

bool

clip_path

Объект Patch или (Path, Transform) или None

color

цвет

edgecolor или ec

цвет или None

facecolor или fc

цвет или None

figure

Figure

fill

bool

gid

str

hatch

{'/', '\', '|', '-', '+', 'x', 'o', 'O', '.', '*'}

in_layout

bool

joinstyle

JoinStyle или {'miter', 'round', 'bevel'}

label

объект

linestyle или ls

{'-', '--', '-.', ':', '', (смещение, последовательность вкл.-выкл), ...}

linewidth или lw

float или None

mouseover

bool

path_effects

AbstractPathEffect

picker

None или bool или float или вызываемый объект

rasterized

bool

sketch_params

(масштаб: float, длина: float, случайность: float)

snap

bool или None

transform

Transform

url

строка

visible

bool

zorder

float

См. также

Sankey.finish
finish()[source]

Настройте оси и верните список информации о поддиаграмме(ах) Санки.

Возвращаемое значение — список поддиаграмм, представленных следующими полями:

Поле

Описание

patch

Контур Санки (экземпляр PathPatch)

flows

значения потоков (положительные для входящих, отрицательные для исходящих)

angles

список углов стрелок [град/90]. Например, если диаграмма не была повернута, вход с верхней стороны будет иметь угол 3 (ВНИЗ), а выход с верхней стороны — угол 1 (ВВЕРХ). Если поток был пропущен (потому что его величина меньше tolerance), то его угол будет None.

tips

массив, где каждая строка — пара [x, y], указывающая положение концов (или "впадин") путей потока. Если величина потока меньше tolerance для экземпляра Sankey, поток пропускается, а его конец будет находиться в центре диаграммы.

text

экземпляр Text для подписи диаграммы

texts

список экземпляров Text для меток потоков

См. также

Sankey.add

© 2012–2023 Matplotlib Development Team. All rights reserved.
Licensed under the Matplotlib License Agreement.
https://matplotlib.org/3.6.0/api/sankey_api.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API