In this special project made by Elijah Meeks and Maya Krishnan, a generic graph of nodes and edges can be made and interacted with so that anyone can better understand the concept of Network Analysis and Representation. The nodes here are just generic nodes, representing nothing particular but can be chosen to assume various roles provided by the creator. Similarly, the edges by default have no meaning, but they can assume relationship roles based on the selected model. Additionally, users can choose to add new nodes into the network or randomly delete a portion of them. The nodes themselves can be moved around but quickly snap back into position. To better understand this, please open the link to the project and play around with it yourself.

Other than selecting models, the project also allows for adjustments of the three forces involved in the network: “gravity” to prevent nodes from flying away, “charge” to repel all nodes from each other and prevent clustering, and “attraction” between nodes to determine the form of the final network. Upon interacting with the controls, a helpful explanation will appear directly beneath them. There are also other controls available, and they are all intriguing to work with. I spent a few minutes playing around with the controls.

This project was technically done in HTML, but in actuality a special feature was used (a <script> tag) which allows JavaScript code to be inserted into the HTML file and executed on the user’s web browser device. A GitHub link was even provided containing the source code for the whole project as well as the dataset involved. Consequently, special data representation techniques like “Ego Network” are available, with this technique being used to find all nodes connected to a selected node as well as the nodes directly connected to them.
