Donc dans le module SchemDraw, il y a six éléments utilisés pour représenter les nœuds principaux de l'organigramme. Les ovales représentent le début et la fin de la décision. Le code est le suivant :
import schemdraw from schemdraw.flow import * with schemdraw.Drawing() as d: d += Start().label("Start")
output
.
Les flèches représentent la direction de la prise de décision et sont utilisées pour connecter différents nœuds. Le code est le suivant :
with schemdraw.Drawing() as d: d += Arrow(w = 5).right().label("Connector")
sortie
Le parallélogramme représente le problème que vous devez traiter et résoudre, tandis que le rectangle représente l'effort ou le processus que vous devez faire pour cela, le code est le suivant :
with schemdraw.Drawing() as d: d += Data(w = 5).label("What's the problem")
output
with schemdraw.Drawing() as d: d += Process(w = 5).label("Processing")
output
Le losange représente la situation spécifique de la prise de décision, le code est le suivant :
with schemdraw.Drawing() as d: d += Decision(w = 5).label("Decisions")
output
Traçons un organigramme simple Si nous réfléchissons à l'opportunité d'aller camper le week-end, alors puisque nous allons camper, nous devons absolument vérifier la météo. pour voir s'il fait beau. S'il pleut, n'y allez pas. Selon cette logique, dessinons un organigramme le code est le suivant :
import schemdraw from schemdraw.flow import * with schemdraw.Drawing() as d: d+= Start().label("Start") d+= Arrow().down(d.unit/2) # 具体是啥问题嘞 d+= Data(w = 4).label("Go camping or not") d+= Arrow().down(d.unit/2) # 第一步 查看天气 d+= Box(w = 4).label("Check weather first") d+= Arrow().down(d.unit/2) # 是否是晴天 d+= (decision := Decision(w = 5, h= 5, S = "True", E = "False").label("See if it's sunny")) # 如果是真的话 d+= Arrow().length(d.unit/2) d+= (true := Box(w = 5).label("Sunny, go camping")) d+= Arrow().length(d.unit/2) # 结束 d+= (end := Ellipse().label("End")) # 如果不是晴天的话 d+= Arrow().right(d.unit).at(decision.E) # 那如果是下雨天的话,就不能去露营咯 d+= (false := Box(w = 5).label("Rainy, stay at home")) # 决策的走向 d+= Arrow().down(d.unit*2.5).at(false.S) # 决策的走向 d+= Arrow().left(d.unit*2.15) d.save("palindrome flowchart.jpeg", dpi = 300)
output
Networkx module C'est. utilisé pour créer et traiter des structures de réseau graphiques complexes, générer une variété de réseaux aléatoires et de réseaux classiques, analyser les structures de réseau et construire des modèles de réseau. Par exemple, le module networkx peut être utilisé dans le cas du dessin d'un réseau humain,
Et. par exemple, un organigramme de l'entreprise peut également utiliser ce module pour dessiner la structure globale de l'entreprise de manière simple et intuitive. Le code est le suivant :
import networkx as nx import matplotlib.pyplot as plt import numpy as np G = nx.DiGraph() nodes = np.arange(0, 8).tolist() G.add_nodes_from(nodes) # 节点连接的信息,哪些节点的是相连接的 G.add_edges_from([(0,1), (0,2), (1,3), (1, 4), (2, 5), (2, 6), (2,7)]) # 节点的位置 pos = {0:(10, 10), 1:(7.5, 7.5), 2:(12.5, 7.5), 3:(6, 6), 4:(9, 6), 5:(11, 6), 6:(14, 6), 7:(17, 6)} # 节点的标记 labels = {0:"CEO", 1: "Team A Lead", 2: "Team B Lead", 3: "Staff A", 4: "Staff B", 5: "Staff C", 6: "Staff D", 7: "Staff E"} nx.draw_networkx(G, pos = pos, labels = labels, arrows = True, node_shape = "s", node_color = "white") plt.title("Company Structure") plt.show()
sortie
En voyant cela, vous aurez peut-être l'impression que les résultats que vous obtiendrez. à souligner sont un peu simples, si vous souhaitez ajouter de la couleur, le code est le suivant :
nx.draw_networkx(G, pos = pos, labels = labels, bbox = dict(facecolor = "skyblue", boxstyle = "round", ec = "silver", pad = 0.3), edge_color = "gray" ) plt.title("Company Structure") plt.show()
output
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!