`` `python
Importera matplotlib.pyplot som plt
Importera Networkx som NX
def create_graph ():
"" "
Uppmanar användaren att komma in i kanterna på en graf och returnerar en nätverkskgraf.
"" "
graf =nx.graph ()
Även om det är sant:
edge_input =input ("Enter Edge (format:node1 node2) eller 'gjort':")
om edge_input.lower () =="gjort":
bryta
försök:
node1, node2 =edge_input.Split ()
graf.add_edge (node1, node2)
utom värdeError:
Skriv ut ("Ogiltigt kantformat. Använd 'Node1 Node2'.")
returgraf
DEF Draw_Graph (graf):
"" "
Ritar den givna Networkx -grafen med MatplotLib.
"" "
nx.draw (graf, with_labels =true, node_color ='lightblue', node_size =500, font_size =10, font_color ='svart')
plt.show ()
om __name__ =="__main__":
graf =create_graph ()
rit_graph (graf)
`` `
Förklaring:
1. Importera nödvändiga bibliotek:
- `Matplotlib.pyplot` för plottning
- `Networkx` för grafoperationer
2. `create_graph ()` Funktion:
- Initialiserar ett tomt nätverkskgraf.
- kommer in i en slinga:
- uppmanar användaren att ange en kant i formatet "node1 node2".
- Om användaren kommer in i "gjort" bryter slingan.
- Annars delar den ingången i två noder och lägger kanten till diagrammet.
- Hanterar potential "ValueError" om ingången inte är i rätt format.
- Returnerar den skapade grafen.
3. `rit_graph ()` Funktion:
- Tar en Networkx -graf som ingång.
- använder `nx.draw ()` för att rita grafen:
- `with_labels =true` visar nodetiketter.
- `node_color`,` node_size`, `font_size` och` font_color` anpassa utseendet.
- `plt.show ()` visar den genererade tomten.
4. Main Block (`om __Name__ ==" __main __ ":`)
- Ringer `create_graph)` för att få den användardefinierade grafen.
- Ringer `rit_graph)` för att visa grafen.
Hur man använder:
1. Kör skriptet.
2. Programmet kommer att uppmana dig att komma in i kanterna i formatet "Node1 Node2".
3. Ange kanter en åt gången och tryck på ENTER efter varje.
4. När du är klar skriver du "gjort" och tryck på Enter.
5. Programmet kommer sedan att generera en grafvisualisering med MatplotLib.
Exempel Ingång/utgång:
Input:
`` `
A B
B c
C
gjort
`` `
Utgång:
En graf med tre noder (a, b, c) ansluten i triangulär form visas.