matplotlib.sankey
Модуль для создания диаграмм Санки с помощью Matplotlib.
-
class matplotlib.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] -
Bases:
objectДиаграмма Санки.
Диаграммы Санки — это особый тип диаграмм потоков, в которых ширина стрелок отображается пропорционально величине потока. Обычно они используются для визуализации передачи энергии, материалов или затрат между процессами. Wikipedia (6/1/2011)Создает новый экземпляр диаграммы Санки.
Дополнительные аргументы, перечисленные ниже, применяются ко всем поддиаграммам, чтобы обеспечить согласованное выравнивание и форматирование.
Для построения сложной диаграммы Санки создайте экземпляр
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, которая используется для маркировки потока как величины (т.е. числа, умноженного на единицу, где единица задается).
-
gapfloat -
Пространство между путями, которые разрываются/отклоняются от верха или низа.
-
radiusfloat -
Внутренний радиус вертикальных путей.
-
shoulderfloat -
Размер плеч стрелок выхода.
-
offsetfloat -
Смещение текста (от впадины или наконечника стрелки).
-
head_anglefloat -
Угол, в градусах, голов стрелок (и отрицательный угол хвостов).
-
marginfloat -
Минимальное пространство между контурами Санки и краем области графика.
-
tolerancefloat -
Допустимый максимум величины суммы потоков. Величина суммы соединенных потоков не может быть больше, чем tolerance.
- **kwargs
-
Любые дополнительные ключевые аргументы будут переданы в
add(), что создаст первую поддиаграмму.
См. также
Примеры
-
add(self, patchlabel='', flows=None, orientations=None, labels='', trunklength=1.0, pathlengths=0.25, prior=None, connect=0, 0, rotation=0, **kwargs)[source]
-
-
Добавить простую диаграмму Санки с потоками на одном уровне иерархии.
Параметры: -
patchlabelstr -
Метка, которая будет размещена в центре диаграммы. Обратите внимание, что метка (а не patchlabel) может быть передана как ключевой аргумент для создания записи в легенде.
-
flowslist of float -
Массив значений потоков. По соглашению, входные данные положительные, а выходные — отрицательные.
Потоки размещаются вдоль верхней части диаграммы, от внутренней части к внешней, в порядке их индекса в flows. Они размещаются вдоль боковых сторон диаграммы сверху вниз и вдоль нижней стороны снаружи вовнутрь.
Если сумма входных и выходных данных не равна нулю, расхождение будет отображено в виде кубической кривой Безье вдоль верхних и нижних краёв ствола.
-
orientationslist of {-1, 0, 1} -
Список ориентаций потоков (или одна ориентация, которая будет использоваться для всех потоков). Допустимые значения: 0 (вход слева, выход справа), 1 (сверху и вниз) или -1 (сверху и вниз).
-
labelslist of (str or None) -
Список меток для потоков (или одна метка, которая будет использоваться для всех потоков). Каждая метка может быть None (нет метки) или строкой метки. Если запись является (возможно, пустой) строкой, то количество для соответствующего потока будет показано под строкой. Однако, если единица основной диаграммы равна None, то количества никогда не отображаются, независимо от значения этого аргумента.
-
trunklengthfloat -
Длина между основаниями входной и выходной групп (в единицах данных).
-
pathlengthslist of float -
Список длин вертикальных стрелок до разрыва или после разрыва. Если задано одно значение, то оно будет применено к первым (внутренним) путям сверху и снизу, а длина всех остальных стрелок будет соответствующим образом выровнена. 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функция фильтра, которая принимает (m, n, 3) массив чисел с плавающей точкой и значение dpi, и возвращает (m, n, 3) массив alphaчисло с плавающей точкой или None animatedbool antialiasedили aaнеизвестно capstyle{'butt', 'round', 'projecting'} clip_boxBboxclip_onbool clip_pathPatch или (Path, Transform) или None colorцвет containsнеизвестно edgecolorили ecцвет или None или 'auto' facecolorили fcцвет или None figureFigurefillbool gidстрока hatch{'/', '\', '|', '-', '+', 'x', 'o', 'O', '.', '*'} in_layoutbool joinstyle{'miter', 'round', 'bevel'} labelобъект linestyleили ls{'-', '--', '-.', ':', '', (смещение, последовательность вкл/выкл), ...} linewidthили lwчисло с плавающей точкой или None path_effectsAbstractPathEffectpickerNone или bool или вызываемый объект rasterizedbool или None sketch_params(масштаб: число с плавающей точкой, длина: число с плавающей точкой, случайность: число с плавающей точкой) snapbool или None transformTransformurlстрока visiblebool zorderчисло с плавающей точкой
-
-
См. также
-
finish(self)[source] -
Настройте оси и верните список информации о поддиаграммах Санки.
Возвращаемое значение — список поддиаграмм, представленных с помощью следующих полей:
Поле Описание patch Контур Санки (экземпляр PathPatch)flows значения потоков (положительные для входа, отрицательные для выхода) angles список углов стрелок [град/90]. Например, если диаграмма не повернута, вход сверху будет иметь угол 3 (ВНИЗ), а выход сверху — угол 1 (ВВЕРХ). Если поток пропущен (потому что его величина меньше tolerance), то его угол будет None. tips массив, в котором каждая строка представляет пару [x, y], указывающую положение концов (или "впадин") путей потока. Если величина потока меньше tolerance для экземпляра Sankey, поток пропускается, и его конец будет находиться в центре диаграммы.text экземпляр Textдля метки диаграммыtexts список экземпляров Textдля меток потоковСм. также
© 2012–2018 Matplotlib Development Team. All rights reserved.
Licensed under the Matplotlib License Agreement.
https://matplotlib.org/3.3.3/api/sankey_api.html