matplotlib.sankey#

Módulo para criação de diagramas Sankey usando Matplotlib.

classe matplotlib.sankey. Sankey ( ax = Nenhum , escala = 1,0 , unidade = '' , formato = '%G' , lacuna = 0,25 , raio = 0,1 , ombro = 0,03 , deslocamento = 0,15 , head_angle = 100 , margem = 0,4 , tolerância = 1e- 06 , ** kwargs ) [fonte]#

Bases:object

Diagrama de Sankey.

Os diagramas de Sankey são um tipo específico de diagrama de fluxo, no qual a largura das setas é mostrada proporcionalmente à quantidade de fluxo. Eles são normalmente usados ​​para visualizar transferências de energia ou material ou custo entre processos. Wikipédia (01/06/2011)

Crie uma nova instância do Sankey.

Os argumentos opcionais listados abaixo são aplicados a todos os subdiagramas para que haja alinhamento e formatação consistentes.

Para desenhar um diagrama Sankey complexo, crie uma instância de Sankeychamando-a sem nenhum kwarg:

sankey = Sankey()

Em seguida, adicione subdiagramas Sankey simples:

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

Finalmente, crie o diagrama completo:

sankey.finish()

Ou, em vez disso, simplesmente encadeie essas chamadas:

Sankey().add().add...  .add().finish()
Outros Parâmetros :
machadoAxes

Eixos nos quais os dados devem ser plotados. Se ax não for fornecido, novos Axes serão criados.

flutuador de escala

Fator de escala para os fluxos. scale dimensiona a largura dos caminhos para manter o layout adequado. A mesma escala é aplicada a todos os subdiagramas. O valor deve ser escolhido de forma que o produto da escala e a soma das entradas seja aproximadamente 1,0 (e o produto da escala e a soma das saídas seja aproximadamente -1,0).

unidade str

A unidade física associada às quantidades de fluxo. Se a unidade for Nenhuma, nenhuma das quantidades será rotulada.

formato str ou callable

Uma string de formatação de número Python ou callable usado para rotular os fluxos com suas quantidades (ou seja, um número vezes uma unidade, onde a unidade é fornecida). Se uma string de formato for fornecida, o rótulo será . Se um callable for fornecido, ele será chamado como um argumento.format % quantityquantity

flutuador de lacuna

Espaço entre os caminhos que se abrem/saem para/da parte superior ou inferior.

flutuação do raio

Raio interno dos caminhos verticais.

flutuação do ombro

Tamanho dos ombros das setas de saída.

deslocamento flutuante

Deslocamento de texto (a partir do mergulho ou ponta da seta).

head_angle flutuar

Ângulo, em graus, das pontas das setas (e negativo do ângulo das pontas).

margem flutuante

Espaço mínimo entre os contornos de Sankey e a borda da área do lote.

folga de tolerância

Máximo aceitável da magnitude da soma dos fluxos. A magnitude da soma dos fluxos conectados não pode ser maior que a tolerância .

** kwargs

Qualquer argumento de palavra-chave adicional será passado para add(), que criará o primeiro subdiagrama.

Veja também

Sankey.add
Sankey.finish

Exemplos

( código fonte )

../_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 , orientações = None , labels = '' , trunklength = 1.0 , pathlengths = 0.25 , prior = None , connect = (0, 0) , rotation = 0 , ** kwargs ) [source ] #

Adicione um diagrama Sankey simples com fluxos no mesmo nível hierárquico.

Parâmetros :
patchlabel str

Rótulo a ser colocado no centro do diagrama. Observe que label (não patchlabel ) pode ser passado como argumento de palavra-chave para criar uma entrada na legenda.

lista de fluxos de float

Matriz de valores de fluxo. Por convenção, as entradas são positivas e as saídas são negativas.

Os fluxos são colocados na parte superior do diagrama de dentro para fora na ordem de seu índice dentro dos fluxos . Eles são colocados ao longo dos lados do diagrama de cima para baixo e ao longo da parte inferior de fora para dentro.

Se a soma das entradas e saídas for diferente de zero, a discrepância aparecerá como uma curva cúbica de Bezier ao longo das bordas superior e inferior do tronco.

lista de orientações de {-1, 0, 1}

Lista de orientações dos fluxos (ou uma única orientação a ser usada para todos os fluxos). Os valores válidos são 0 (entradas da esquerda, saídas da direita), 1 (de e para cima) ou -1 (de e para baixo).

lista de rótulos de (str ou None)

Lista de rótulos para os fluxos (ou um único rótulo a ser usado para todos os fluxos). Cada rótulo pode ser Nenhum (sem rótulo) ou uma string de rotulagem. Se uma entrada for uma string (possivelmente vazia), a quantidade para o fluxo correspondente será mostrada abaixo da string. No entanto, se a unidade do diagrama principal for None, as quantidades nunca serão mostradas, independentemente do valor desse argumento.

comprimento do tronco flutuante

Comprimento entre as bases dos grupos de entrada e saída (em unidades de espaço de dados).

lista de comprimentos de caminho de float

Lista de comprimentos das setas verticais antes do arrombamento ou depois do arrombamento. Se um único valor for fornecido, ele será aplicado aos primeiros caminhos (internos) na parte superior e inferior, e o comprimento de todas as outras setas será justificado de acordo. Os comprimentos de caminho não são aplicados às entradas e saídas horizontais.

anterior int

Índice do diagrama anterior ao qual este diagrama deve ser conectado.

conectar (int, int)

Uma tupla (anterior, esta) indexando o fluxo do diagrama anterior e o fluxo deste diagrama que deve ser conectado. Se este for o primeiro diagrama ou o anterior for None , connect será ignorado.

flutuador de rotação

Ângulo de rotação do diagrama em graus. A interpretação do argumento de orientações será rotacionada de acordo (por exemplo, se rotação == 90, uma entrada de orientação de 1 significa para/da esquerda). a rotação é ignorada se este diagrama estiver conectado a um existente (usando prior e connect ).

Devoluções :
Sankey

A Sankeyinstância atual.

Outros Parâmetros :
** kwargs

Argumentos de palavra-chave adicionais definem matplotlib.patches.PathPatch propriedades, listadas abaixo. Por exemplo, pode-se querer usar fill=Falseou .label="A legend entry"

Propriedade

Descrição

agg_filter

uma função de filtro, que usa uma matriz flutuante (m, n, 3) e um valor de dpi e retorna uma matriz (m, n, 3) e dois deslocamentos do canto inferior esquerdo da imagem

alpha

desconhecido

animated

bool

antialiasedou aa

bool ou nenhum

capstyle

CapStyleou {'bunda', 'projetando', 'redondo'}

clip_box

Bbox

clip_on

bool

clip_path

Patch ou (Caminho, Transformação) ou Nenhum

color

cor

edgecolorou ec

cor ou nenhum

facecolorou fc

cor ou nenhum

figure

Figure

fill

bool

gid

str

hatch

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

in_layout

bool

joinstyle

JoinStyleou {'esquadria', 'redondo', 'chanfrado'}

label

objeto

linestyleou ls

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

linewidthou lw

flutuante ou nenhum

mouseover

bool

path_effects

AbstractPathEffect

picker

None ou bool ou float ou callable

rasterized

bool

sketch_params

(escala: flutuante, comprimento: flutuante, aleatoriedade: flutuante)

snap

bool ou nenhum

transform

Transform

url

str

visible

bool

zorder

flutuador

Veja também

Sankey.finish
acabamento ( ) [fonte] #

Ajuste os eixos e retorne uma lista de informações sobre o(s) subdiagrama(s) Sankey.

O valor de retorno é uma lista de subdiagramas representados com os seguintes campos:

Campo

Descrição

correção

Contorno de Sankey (uma instância de PathPatch)

flui

valores dos fluxos (positivo para entrada, negativo para saída)

ângulos

lista de ângulos das setas [graus/90] Por exemplo, se o diagrama não foi girado, uma entrada para o lado superior terá um ângulo de 3 (PARA BAIXO) e uma saída do lado superior terá um ângulo de 1 PARA CIMA). Se um fluxo foi ignorado (porque sua magnitude é menor que a tolerância ), seu ângulo será Nenhum .

pontas

array em que cada linha é um par [x, y] indicando as posições das pontas (ou "dips") dos caminhos de fluxo Se a magnitude de um fluxo for menor que a tolerância para a instância de Sankey, o fluxo é ignorado e seu ponta estará no centro do diagrama.

texto

Textinstância para o rótulo do diagrama

Texto:% s

lista de Textinstâncias para os rótulos dos fluxos

Veja também

Sankey.add