Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/simgo123/visualgraph
Visualization of graphs
https://github.com/simgo123/visualgraph
Last synced: 20 days ago
JSON representation
Visualization of graphs
- Host: GitHub
- URL: https://github.com/simgo123/visualgraph
- Owner: SimGo123
- Created: 2019-05-05T19:25:59.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2019-05-05T20:14:31.000Z (over 5 years ago)
- Last Synced: 2024-11-10T13:43:28.690Z (3 months ago)
- Language: C#
- Size: 88.9 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# VisualGraph
# What is that?
With this C#-Program you can create [Graphs](https://en.wikipedia.org/wiki/Graph_(discrete_mathematics)) which consist of vertices and edges (like a rail network, a map, ...).
You can than take a look at the adjacency matrix or execute [Dijekstra's algorithm](https://en.wikipedia.org/wiki/Dijkstra%27s_algorithm) which finds the shortest way to every other vertex which are linked by edges with the initial vertex.
I just created this program, and if you want any changes to be done, please let me know.
# How to use the program?
If you open the program every Label will have a german text.
To change to english, please just change the comboBox-Text to english, that's it.
You can than add a vertex by clicking the button "Add vertex". You can than give it a name.
Add it to the screen by just clicking at the position you want it to be.
If you have added some vertices, you can add edges by clicking the button "Add edge".
A dialog will appear, so you can decide from which vertex to which it goes.
You can as well add a weight, which is for example the time it takes to go from one train station (vertex) to another.
You can than take a look at the adjacency matrix by clicking the button "Show adjacency matrix".
You can also save the file as a .graph-file, a file-extension which I created, and open it again.
If you click "Execute Dijekstra" it will show you how long it takes to every other linked vertex.
# How does the program work?
It consists of the following classes:
* Form1: Standard form with event-handlers
* Insert: Insert the vertices and edges into Dijekstra
* Dijekstra: Execute the Dijekstra-algorithm
* Vertex: Just a vertex with a name
* EdgeDialog: Insert edges
* ShowAdjacency: Show the adjacency matrix
* Results: Display the results of the Dijekstra-algorithm
* GraphInterpreter: Read and write .graph-Files