Même les débutants peuvent le faire! Un moyen facile d'écrire un diagramme de Sankey dans Plotly

Qu'est-ce que SankyDiagram

Le diagramme de Sankey est un graphique qui exprime le débit entre les processus. L'épaisseur de la flèche indique la quantité de débit. En particulier, il est utilisé pour représenter le déplacement d'énergie, les fournitures, les dépenses, etc. Source: [Wikipédia](https://ja.wikipedia.org/wiki/%E3%82%B5%E3%83%B3%E3%82%AD%E3%83%BC_%E3%83%80%E3 % 82% A4% E3% 82% A2% E3% 82% B0% E3% 83% A9% E3% 83% A0)

Avantages de la mise en œuvre avec plotly (Plotly Express)

Implémentation du diagramme de Sankey dans Plotly

import pandas as pd
import plotly.express as px

#Génération DF
#Créer un bloc de données de sorte qu'une ligne de données représente une transition
df =pd.DataFrame([['Cat1', 'CatA-2', 'AI', 'Normal'],
                  ['Cat1', 'CatA-3', 'AI', 'Normal'],
                  ['Cat1', 'CatA-3', 'No', 'NG'],
                  ['Cat3', 'CatA-3', 'Random', 'Normal'],
                  ['Cat3', 'CatA-5', 'Random', 'NG'],
                  ['Cat3', 'CatA-1', 'Random', 'NG'],
                  ['Cat3', 'CatA-1', 'No', 'NG']],
                columns=['one','two','three',"output"])

#Faire des variables catégoriques des variables factices
#Erreur si la dernière colonne du bloc de données est une chaîne de caractères?
df["output"] = pd.get_dummies(df["output"])

fig = px.parallel_categories(df, 
                             dimensions=['one','two','three','output'],
                             color="output",
                             color_continuous_scale=px.colors.diverging.BrBG,
                             labels={'one':'FirstArea', 'two':'SecondArea', 'three':'ThirdArea','output':'output'}
                            )
fig.show()

newplot (69).png

Recommended Posts

Même les débutants peuvent le faire! Un moyen facile d'écrire un diagramme de Sankey dans Plotly
Un moyen relativement simple d'insérer un dictionnaire NEologd dans le dictionnaire Windows-System
Un moyen simple de visualiser le temps pris en Python et un moyen plus intelligent de l'améliorer
Est-il facile de synthétiser un médicament sur le marché?
Un moyen simple de réexécuter une commande précédemment exécutée dans ipython
[Python] Créez un linebot pour écrire le nom et l'âge sur l'image
Même un nouvel ingénieur diplômé peut le faire! Conseils pour faire une différence dans la synchronisation en commentant
Je veux écrire un élément dans un fichier avec numpy et le vérifier.
[Python] Combiner des listes contenant des nombres en chaînes et les écrire dans un fichier de sortie
Recherche d'un moyen efficace d'écrire un Dockerfile avec Python avec de la poésie
Un moyen simple d'utiliser Python 2.7 sur Cent OS 6
Un moyen facile de tracer un diagramme HR à l'aide d'une requête
Comment charger facilement le processeur / la mémoire sous Linux
Un moyen simple d'appeler Java depuis Python
Fonctionnement automatique du navigateur que même les débutants peuvent faire
Un moyen simple de mesurer la vitesse de traitement d'un disque reconnu par Linux
Un moyen simple de remplir le début de 0 en fonction du nombre de chiffres dans le nombre [Python]
Vous pouvez le faire en 3 minutes! Comment créer un code QR (GIF) fonctionnel!