matplotlib.sankey#

Modul zum Erstellen von Sankey-Diagrammen mit Matplotlib.

Klasse 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 , toleranz = 1e- 06 , ** kwargs ) [Quelle]#

Basen:object

Sankey-Diagramm.

Sankey-Diagramme sind eine spezielle Art von Fließdiagrammen, bei denen die Breite der Pfeile proportional zur Durchflussmenge dargestellt wird. Sie werden typischerweise verwendet, um Energie- oder Material- oder Kostenübertragungen zwischen Prozessen zu visualisieren. Wikipedia (01.06.2011)

Erstellen Sie eine neue Sankey-Instanz.

Die unten aufgeführten optionalen Argumente werden auf alle Unterdiagramme angewendet, sodass eine konsistente Ausrichtung und Formatierung vorhanden ist.

Um ein komplexes Sankey-Diagramm zu zeichnen, erstellen Sie eine Instanz von Sankey, indem Sie es ohne Kwargs aufrufen:

sankey = Sankey()

Fügen Sie dann einfache Sankey-Unterdiagramme hinzu:

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

Erstellen Sie schließlich das vollständige Diagramm:

sankey.finish()

Oder verketten Sie diese Anrufe stattdessen einfach:

Sankey().add().add...  .add().finish()
Andere Parameter :
AxtAxes

Achsen, auf denen die Daten aufgetragen werden sollen. Wenn Axt nicht angegeben wird, werden neue Axes erstellt.

Skalenschwimmer _

Skalierungsfaktor für die Flüsse. Scale passt die Breite der Pfade an, um das richtige Layout beizubehalten. Auf alle Teildiagramme wird der gleiche Maßstab angewendet. Der Wert sollte so gewählt werden, dass das Produkt aus der Skala und der Summe der Eingänge ungefähr 1,0 beträgt (und das Produkt aus der Skala und der Summe der Ausgänge ungefähr -1,0 beträgt).

Einheit str

Die den Durchflussmengen zugeordnete physikalische Einheit. Wenn die Einheit Keine ist, wird keine der Mengen gekennzeichnet.

Format str oder aufrufbar

Eine Zeichenfolge zur Formatierung einer Python-Zahl oder aufrufbar, die verwendet wird, um die Flüsse mit ihren Mengen zu kennzeichnen (dh eine Zahl mal einer Einheit, wobei die Einheit angegeben ist). Wenn eine Formatzeichenfolge angegeben wird, lautet die Bezeichnung . Wenn ein Callable angegeben ist, wird es mit als Argument aufgerufen.format % quantityquantity

Spaltschwimmer _

Abstand zwischen Pfaden, die nach oben oder unten einbrechen/abbrechen.

Radius schweben

Innerer Radius der vertikalen Bahnen.

Schulterschwimmer _

Größe der Schultern von Ausgabepfeilen.

Offset -Schwimmer

Textversatz (von der Senke oder Spitze des Pfeils).

head_angle float

Winkel der Pfeilspitzen in Grad (und negativ des Winkels der Enden).

Randschwimmer _

Mindestabstand zwischen Sankey-Umrissen und dem Rand des Plotbereichs.

Toleranzschwimmer _

Akzeptables Maximum der Größe der Summe der Flüsse. Die Größe der Summe der verbundenen Flüsse kann nicht größer als die Toleranz sein .

**Kwarg

Alle zusätzlichen Schlüsselwortargumente werden an übergeben add(), wodurch das erste Unterdiagramm erstellt wird.

Beispiele

( Quellcode )

../_images/sankey_basics_00_00.png

( png ) #

../_images/sankey_basics_00_01.png

( png ) #

../_images/sankey_basics_00_02.png

( png ) #

add ( Patchlabel = '' , Flüsse = None , Orientierungs = None , Labels = '' , Trunklength = 1.0 , Pathlengths = 0.25 , Prior = None , Connect = (0, 0) , Rotation = 0 , ** kwargs ) [source ] #

Fügen Sie ein einfaches Sankey-Diagramm mit Flüssen auf derselben hierarchischen Ebene hinzu.

Parameter :
Patchlabel str

Etikett, das in der Mitte des Diagramms platziert werden soll. Beachten Sie, dass label (nicht patchlabel ) als Schlüsselwortargument übergeben werden kann, um einen Eintrag in der Legende zu erstellen.

Flows -Liste von Float

Array von Durchflusswerten. Per Konvention sind Eingänge positiv und Ausgänge negativ.

Flows werden am oberen Rand des Diagramms von innen nach außen in der Reihenfolge ihres Index innerhalb von Flows platziert . Sie werden entlang der Seiten des Diagramms von oben nach unten und entlang der Unterseite von außen nach innen platziert.

Wenn die Summe der Ein- und Ausgänge ungleich Null ist, erscheint die Diskrepanz als kubische Bezier-Kurve entlang der oberen und unteren Kante des Stamms.

Orientierungsliste von {-1, 0, 1}

Liste der Ausrichtungen der Flüsse (oder eine einzelne Ausrichtung, die für alle Flüsse verwendet werden soll). Gültige Werte sind 0 (Eingänge von links, Ausgänge nach rechts), 1 (von und nach oben) oder -1 (von und nach unten).

Etikettenliste von (str oder None)

Liste der Labels für die Flows (oder ein einzelnes Label, das für alle Flows verwendet werden soll). Jede Bezeichnung kann None (keine Bezeichnung) oder eine Bezeichnungszeichenfolge sein. Wenn ein Eintrag ein (möglicherweise leerer) String ist, dann wird die Menge für den entsprechenden Durchfluss unter dem String angezeigt. Wenn die Einheit des Hauptdiagramms jedoch Keine ist, werden Mengen nie angezeigt, unabhängig vom Wert dieses Arguments.

Rumpflänge Schwimmer

Länge zwischen den Basen der Eingabe- und Ausgabegruppen (in Datenraumeinheiten).

Pfadlängenliste von Float

Liste der Längen der vertikalen Pfeile vor dem Einbrechen oder nach dem Ausbrechen. Wenn ein einzelner Wert angegeben wird, wird er auf die ersten (inneren) Pfade oben und unten angewendet, und die Länge aller anderen Pfeile wird entsprechend ausgerichtet. Die Pfadlängen werden nicht auf die horizontalen Ein- und Ausgänge angewendet.

vorher int

Index des vorherigen Diagramms, mit dem dieses Diagramm verbunden werden soll.

verbinden (int, int)

Ein (prior, this) Tupel, das den Fluss des vorherigen Diagramms und den Fluss dieses Diagramms indiziert, die verbunden werden sollen. Wenn dies das erste Diagramm ist oder das vorherige Diagramm None ist , wird connect ignoriert.

Rotationsschwimmer _

Drehwinkel des Diagramms in Grad. Die Interpretation des Orientierungsarguments wird entsprechend gedreht (zB wenn Rotation == 90, bedeutet ein Orientierungseintrag von 1 nach/von links). Drehung wird ignoriert, wenn dieses Diagramm mit einem bestehenden verbunden ist (unter Verwendung von prior und connect ).

Rückgaben :
Sanke

Die aktuelle SankeyInstanz.

Andere Parameter :
**Kwarg

Zusätzliche Schlüsselwortargumente setzen matplotlib.patches.PathPatch Eigenschaften, die unten aufgeführt sind. Zum Beispiel möchte man vielleicht fill=Falseoder verwenden .label="A legend entry"

Eigentum

Beschreibung

agg_filter

eine Filterfunktion, die ein (m, n, 3) Float-Array und einen dpi-Wert akzeptiert und ein (m, n, 3)-Array und zwei Offsets von der unteren linken Ecke des Bildes zurückgibt

alpha

Unbekannt

animated

bool

antialiasedoder äh

bool oder Keine

capstyle

CapStyleoder {'hinter', 'vorstehend', 'rund'}

clip_box

Bbox

clip_on

bool

clip_path

Patch oder (Pfad, Transform) oder None

color

Farbe

edgecoloroder ec

Farbe oder Keine

facecoloroder FC

Farbe oder Keine

figure

Figure

fill

bool

gid

Str

hatch

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

in_layout

bool

joinstyle

JoinStyleoder {'Gehrung', 'rund', 'Fase'}

label

Objekt

linestyleoder ls

{'-', '--', '-.', ':', '', (offset, on-off-seq), ...}

linewidthoder lw

Float oder None

mouseover

bool

path_effects

AbstractPathEffect

picker

None oder bool oder float oder aufrufbar

rasterized

bool

sketch_params

(Maßstab: Float, Länge: Float, Zufälligkeit: Float)

snap

bool oder Keine

transform

Transform

url

Str

visible

bool

zorder

schweben

Siehe auch

Sankey.finish
beenden ( ) [Quelle] #

Passen Sie die Achsen an und geben Sie eine Liste mit Informationen zu den Sankey-Unterdiagrammen zurück.

Der Rückgabewert ist eine Liste von Unterdiagrammen, die durch die folgenden Felder dargestellt werden:

Aufstellen

Beschreibung

Patch

Sankey-Umriss (eine Instanz von PathPatch)

fließt

Werte der Flüsse (positiv für Input, negativ für Output)

Winkel

Liste der Winkel der Pfeile [Grad/90] Wenn das Diagramm beispielsweise nicht gedreht wurde, hat eine Eingabe zur oberen Seite einen Winkel von 3 (UNTEN) und eine Ausgabe von der oberen Seite einen Winkel von 1 (OBEN). Wenn ein Fluss übersprungen wurde (weil seine Größe kleiner als die Toleranz ist ), dann ist sein Winkel None .

Tipps

Array, in dem jede Zeile ein [x, y]-Paar ist, das die Positionen der Spitzen (oder "Senken") der Flusspfade angibt. Wenn die Größe eines Flusses kleiner als die Toleranz für die Instanz von Sankeyist, wird der Fluss übersprungen und seine Die Spitze befindet sich in der Mitte des Diagramms.

Text

TextInstanz für die Beschriftung des Diagramms

Texte

Liste von TextInstanzen für die Labels von Flüssen

Siehe auch

Sankey.add