matplotlib.sankey#

Module de création de diagrammes Sankey à l'aide de Matplotlib.

classe 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]#

Socles :object

Diagramme de Sankey.

Les diagrammes de Sankey sont un type spécifique de diagramme de flux, dans lequel la largeur des flèches est indiquée proportionnellement à la quantité de flux. Ils sont généralement utilisés pour visualiser les transferts d'énergie, de matériaux ou de coûts entre les processus. Wikipédia (01/06/2011)

Créez une nouvelle instance de Sankey.

Les arguments facultatifs répertoriés ci-dessous sont appliqués à tous les sous-diagrammes afin d'assurer un alignement et un formatage cohérents.

Afin de dessiner un diagramme de Sankey complexe, créez une instance de Sankeyen l'appelant sans aucun kwarg :

sankey = Sankey()

Ajoutez ensuite des sous-diagrammes Sankey simples :

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

Enfin, créez le diagramme complet :

sankey.finish()

Ou, à la place, connectez simplement ces appels en guirlande :

Sankey().add().add...  .add().finish()
Autres paramètres :
hacheAxes

Axes sur lesquels les données doivent être tracées. Si ax n'est pas fourni, de nouveaux Axes seront créés.

flotteur d'échelle

Facteur d'échelle pour les flux. scale dimensionne la largeur des chemins afin de maintenir une disposition correcte. La même échelle est appliquée à tous les sous-diagrammes. La valeur doit être choisie de sorte que le produit de l'échelle et de la somme des entrées soit d'environ 1,0 (et que le produit de l'échelle et de la somme des sorties soit d'environ -1,0).

unité str

L'unité physique associée aux quantités de flux. Si l'unité est Aucune, aucune des quantités n'est étiquetée.

format str ou appelable

Une chaîne de formatage numérique Python ou un appelable utilisé pour étiqueter les flux avec leurs quantités (c'est-à-dire, un nombre fois une unité, où l'unité est donnée). Si une chaîne de format est donnée, l'étiquette sera . Si un appelable est donné, il sera appelé avec comme argument.format % quantityquantity

flotteur d' écart

Espace entre les chemins qui pénètrent/se détachent vers/du haut ou du bas.

rayon flottant

Rayon intérieur des trajectoires verticales.

flotteur d' épaule

Taille des épaules des flèches de sortie.

flotteur décalé

Décalage du texte (à partir du creux ou de la pointe de la flèche).

flotteur head_angle

Angle, en degrés, des têtes de flèches (et négatif de l'angle des queues).

marge flottante

Espace minimum entre les contours de Sankey et le bord de la zone de tracé.

flotteur de tolérance

Maximum acceptable de l'ampleur de la somme des flux. L'amplitude de la somme des flux connectés ne peut pas être supérieure à la tolérance .

**kwargs

Tout argument de mot-clé supplémentaire sera transmis à add(), qui créera le premier sous-diagramme.

Voir également

Sankey.add
Sankey.finish

Exemples

( Code source )

../_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 ] #

Ajoutez un diagramme Sankey simple avec des flux au même niveau hiérarchique.

Paramètres :
patchlabel str

Étiquette à placer au centre du schéma. Notez que label (pas patchlabel ) peut être passé comme argument de mot-clé pour créer une entrée dans la légende.

liste des flux de float

Tableau de valeurs de débit. Par convention, les entrées sont positives et les sorties sont négatives.

Les flux sont placés en haut du diagramme de l'intérieur vers l'extérieur dans l'ordre de leur index dans les flux . Ils sont placés le long des côtés du diagramme de haut en bas et le long du bas de l'extérieur vers l'intérieur.

Si la somme des entrées et des sorties est différente de zéro, l'écart apparaîtra sous la forme d'une courbe de Bézier cubique le long des bords supérieur et inférieur du tronc.

liste des orientations de {-1, 0, 1}

Liste des orientations des flux (ou une seule orientation à utiliser pour tous les flux). Les valeurs valides sont 0 (entrées depuis la gauche, sorties vers la droite), 1 (depuis et vers le haut) ou -1 (depuis et vers le bas).

liste d' étiquettes de (str ou None)

Liste des libellés des flux (ou un seul libellé à utiliser pour tous les flux). Chaque étiquette peut être Aucune (aucune étiquette) ou une chaîne d'étiquetage. Si une entrée est une chaîne (éventuellement vide), la quantité pour le flux correspondant sera affichée sous la chaîne. Cependant, si l' unité du diagramme principal est Aucune, les quantités ne sont jamais affichées, quelle que soit la valeur de cet argument.

flotteur de longueur de tronc

Longueur entre les bases des groupes d'entrée et de sortie (en unités d'espace de données).

liste des longueurs de chemin de float

Liste des longueurs des flèches verticales avant effraction ou après effraction. Si une seule valeur est donnée, elle sera appliquée aux premiers chemins (intérieurs) en haut et en bas, et la longueur de toutes les autres flèches sera justifiée en conséquence. Les longueurs de trajet ne sont pas appliquées aux entrées et sorties horizontales.

int antérieur

Index du diagramme précédent auquel ce diagramme doit être relié.

connecter (entier, entier)

Un tuple (prior, this) indexant le flux du diagramme précédent et le flux de ce diagramme qui doit être connecté. S'il s'agit du premier diagramme ou si le précédent est None , connect sera ignoré.

flotteur rotatif

Angle de rotation du diagramme en degrés. L'interprétation de l' argument orientations sera tournée en conséquence (par exemple, si rotation == 90, une entrée orientations de 1 signifie vers/depuis la gauche). la rotation est ignorée si ce diagramme est connecté à un diagramme existant (en utilisant prior et connect ).

Retours :
Sankey

L' Sankeyinstance actuelle.

Autres paramètres :
**kwargs

Des arguments de mots clés supplémentaires définissent les matplotlib.patches.PathPatch propriétés, répertoriées ci-dessous. Par exemple, on peut vouloir utiliser fill=Falseou .label="A legend entry"

Propriété

La description

agg_filter

une fonction de filtre, qui prend un tableau flottant (m, n, 3) et une valeur dpi, et renvoie un tableau (m, n, 3) et deux décalages à partir du coin inférieur gauche de l'image

alpha

inconnue

animated

bourdonner

antialiasedou aa

booléen ou Aucun

capstyle

CapStyleou {'bout', 'en saillie', 'rond'}

clip_box

Bbox

clip_on

bourdonner

clip_path

Patch ou (chemin, transformation) ou aucun

color

Couleur

edgecolorou ce

couleur ou Aucun

facecolorou FC

couleur ou Aucun

figure

Figure

fill

bourdonner

gid

chaîne

hatch

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

in_layout

bourdonner

joinstyle

JoinStyleou {'onglet', 'rond', 'biseau'}

label

objet

linestyleou ls

{'-', '--', '-.', ':', '', (décalage, on-off-seq), ...}

linewidthou lw

flottant ou Aucun

mouseover

bourdonner

path_effects

AbstractPathEffect

picker

Aucun ou bool ou flottant ou appelable

rasterized

bourdonner

sketch_params

(échelle : flottant, longueur : flottant, caractère aléatoire : flottant)

snap

booléen ou Aucun

transform

Transform

url

chaîne

visible

bourdonner

zorder

flotteur

Voir également

Sankey.finish
terminer ( ) [source] #

Ajustez les axes et renvoyez une liste d'informations sur le(s) sous-diagramme(s) de Sankey.

La valeur de retour est une liste de sous-diagrammes représentés avec les champs suivants :

Champ

La description

correctif

Contour de Sankey (une instance de PathPatch)

les flux

valeurs des débits (positif pour l'entrée, négatif pour la sortie)

angles

liste des angles des flèches [deg/90] Par exemple, si le diagramme n'a pas été tourné, une entrée vers le haut aura un angle de 3 (DOWN), et une sortie du haut aura un angle de 1 (HAUT). Si un flux a été ignoré (parce que sa magnitude est inférieure à tolérance ), son angle sera Aucun .

des astuces

tableau dans lequel chaque ligne est une paire [x, y] indiquant les positions des pointes (ou "creux") des chemins de flux Si l'amplitude d'un flux est inférieure à la tolérance pour l'instance de Sankey, le flux est ignoré et son pointe sera au centre du diagramme.

texte

Textinstance pour l'étiquette du diagramme

les textes

liste des Textinstances pour les libellés des flux

Voir également

Sankey.add