`` `Python
MATPLOTLIB.PYPLOT Importeren als PLT
Networkx importeren als nx
def create_graph ():
"" "
Vraagt de gebruiker om randen van een grafiek in te voeren en retourneert een netwerkxgrafiek.
"" "
grafiek =nx.graph ()
terwijl waar:
Edge_Input =input ("ENTER EDGE (FORMAT:Node1 Node2) of 'Done':")
if edge_input.Lower () =="Done":
pauze
poging:
Node1, node2 =edge_input.split ()
Graph.add_edge (Node1, Node2)
behalve waardeError:
print ("Ongeldig randformaat. Gebruik 'Node1 Node2'.")
retourgrafiek
def draw_graph (grafiek):
"" "
Tekent de gegeven Networkx -grafiek met behulp van Matplotlib.
"" "
nx.draw (grafiek, met_labels =true, node_color ='lightBlue', node_size =500, font_size =10, font_color ='black')
plt.show ()
if __Name__ =="__main__":
Graph =create_graph ()
Draw_graph (grafiek)
`` `
Verklaring:
1. Importeer de benodigde bibliotheken:
- `matplotlib.pyplot` voor het plotten
- `Networkx` voor grafische bewerkingen
2. `create_graph ()` functie:
- Initialiseert een lege netwerkxgrafiek.
- komt een lus binnen:
- vraagt de gebruiker om een rand in het formaat "Node1 Node2" in te voeren.
- Als de gebruiker "klaar" invoert, breekt de lus.
- Anders splitst het de invoer in twee knooppunten en voegt de rand toe aan de grafiek.
- Behandelt potentiële `valueError` als de invoer niet in het juiste formaat staat.
- Retourneert de gemaakte grafiek.
3. `Draw_graph ()` functie:
- Neemt een NetworkX -grafiek als invoer.
- Gebruikt `nx.draw ()` om de grafiek te tekenen:
- `met_labels =true` geeft knooppuntlabels weer.
- `node_color`,` node_size`, `font_size` en` font_color` passen het uiterlijk aan.
- `plt.show ()` geeft de gegenereerde plot weer.
4. Hoofdblok (`if __Name__ ==" __Main __ ":`)
- oproepen `create_graph ()` om de door de gebruiker gedefinieerde grafiek te krijgen.
- roept `draw_graph ()` om de grafiek weer te geven.
Hoe te gebruiken:
1. Voer het script uit.
2. Het programma vraagt u om randen in het formaat "Node1 Node2" in te voeren.
3. Voer randen één voor één in en druk op enter na elk.
4. Typ "Gereed" en druk op ENTER.
5. Het programma zal vervolgens een grafische visualisatie genereren met behulp van Matplotlib.
Voorbeeld input/output:
invoer:
`` `
A B
B C
C A
klaar
`` `
Uitgang:
Een grafiek met drie knooppunten (a, b, c) verbonden in een driehoekige vorm wordt weergegeven. |