Une note lors de la création d'un graphe dirigé à l'aide de Graphviz en Python
Tout d'abord, installez Graphviz sur Windows.
https://graphviz.gitlab.io/_pages/Download/Download_windows.html
Cette fois, j'ai téléchargé le msi. Après le téléchargement, exécutez-le et installez-le selon l'assistant. Après l'installation, passez-le par le chemin.
Ensuite, installez graphviz avec pip.
pip install graphviz
Tout d'abord, le simple.
from graphviz import Digraph
graph = Digraph(format="png")
#Ajouter un nœud
graph.node("node1")
graph.node("node2")
graph.node("node3")
graph.node("node4")
#Ajouter un côté
graph.edge("node1", "node2")
graph.edge("node1", "node3")
graph.edge("node2", "node4")
graph.edge("node3", "node4")
#Enregistrer l'image
#Aucune extension nécessaire
graph.render("image/output")
#Afficher l'image
graph.view()
from graphviz import Digraph
graph = Digraph(format="png")
Importez Digraph pour créer un graphe orienté. En plus de png, pdf et svg peuvent également être générés.
#Ajouter un nœud
graph.node("node1")
graph.node("node2")
graph.node("node3")
graph.node("node4")
Créez un nœud. L'argument donné est dessiné dans le nœud.
#Ajouter un côté
graph.edge("node1", "node2")
graph.edge("node1", "node3")
graph.edge("node2", "node4")
graph.edge("node3", "node4")
Créez un bord. Une flèche est attachée dans le sens du premier argument → le deuxième argument.
Comme indiqué ci-dessous, un nouveau nœud sera créé si vous le spécifiez ici même si vous n'avez pas créé de nœud.
#Ajouter un côté
graph.edge("node1", "node2")
graph.edge("node1", "node3")
graph.edge("node2", "node4")
graph.edge("node3", "node4")
#Spécifiez un nœud qui n'a pas été créé
graph.edge("A", "B")
La sortie est la suivante.
Vous pouvez modifier la forme et la couleur du nœud.
from graphviz import Digraph
graph = Digraph(format="png")
#Ajouter un nœud
graph.attr("node", shape="square") #Rendre la forme carrée
graph.node("node1")
graph.node("node2")
graph.attr("node", shape="star") #Faire de la forme une étoile
graph.node("node3")
graph.node("node4")
graph.node("node5", shape="circle") #Peut être réglé individuellement
graph.node("node6")
#Ajouter un côté
graph.edge("node1", "node2")
graph.edge("node1", "node3")
graph.edge("node2", "node4")
graph.edge("node3", "node4")
graph.edge("node4", "node5")
graph.edge("node4", "node6")
#Enregistrer l'image
#Aucune extension nécessaire
graph.render("image/output2")
#Afficher l'image
graph.view()
#Ajouter un nœud
graph.attr("node", shape="square") #Rendre la forme carrée
graph.node("node1")
graph.node("node2")
graph.attr("node", shape="star") #Faire de la forme une étoile
graph.node("node3")
graph.node("node4")
graph.node("node5", shape="circle") #Peut être réglé individuellement
graph.node("node6")
Vous pouvez modifier les paramètres de tous les nœuds à l'aide de la méthode attr.
Vous pouvez spécifier la forme en définissant shape =" (shape) "
.
Si vous spécifiez la forme lors de la création d'un nœud, vous ne pouvez modifier que les paramètres de ce nœud.
from graphviz import Digraph
graph = Digraph(format="png")
#Paramètres d'apparence
graph.attr("node", style="filled", fillcolor="black", color="red") #Paramètres de couleur des nœuds
graph.attr("edge", color="cyan") #Réglage de la couleur latérale
#Ajouter un nœud
graph.node("node1", style="filled", fillcolor="palegreen", fontcolor="blue")
graph.node("node2", style="filled", fillcolor="yellow")
graph.node("node3", fontcolor="magenta")
graph.node("node4", style="filled", fillcolor="#808080")
graph.node("node5", fontcolor="white")
#Ajouter un côté
graph.edge("node1", "node2")
graph.edge("node1", "node3")
graph.edge("node2", "node4")
graph.edge("node3", "node4")
graph.edge("node3", "node5")
#Enregistrer l'image
#Aucune extension nécessaire
graph.render("image/output3")
#Afficher l'image
graph.view()
#Paramètres d'apparence
graph.attr("node", style="filled", fillcolor="black", color="red") #Paramètres de couleur des nœuds
graph.attr("edge", color="cyan") #Réglage de la couleur latérale
#Ajouter un nœud
graph.node("node1", style="filled", fillcolor="palegreen", fontcolor="blue")
graph.node("node2", style="filled", fillcolor="yellow")
graph.node("node3", fontcolor="magenta")
graph.node("node4", style="filled", fillcolor="#808080")
graph.node("node5", fontcolor="white")
L'ensemble du réglage peut être effectué en utilisant la méthode attr, comme lors du changement de forme. Les nœuds et les arêtes peuvent être définis en définissant le premier argument sur "" node "ou" "edge" `.
Pour remplir, utilisez style =" fill "
, fill color =" (color) "
.
Pour changer la couleur du texte, utilisez font color =" (color) "
.
La couleur peut également être spécifiée par le code couleur.
Il peut également être défini individuellement lors de la création d'un nœud.
Dessinez un beau graphique en utilisant Graphviz sur Python
Recommended Posts