VR vs. 2D: Community Network Visualization
Project 1 Software and In-Class activity Report and Evaluation
Dave Song Spring 2023
If you are interested in creating:
2D network graphs, please take a look at this page.
network graphs in VR, please take a look at this page.
Having recently transitioned my intended concentration to computer science, I was interested in evaluating existing software and tools used to visualize community networks.
The initial motivation for Project 1 was to accomplish following goals:
Study community detection algorithms (also graphs).
Evaluate if visualizing community networks in VR is the right solution.
This question was the main motivating question since at the beginning of the semester, Professor Laidlaw talked about evaluating VR applications and asking if a particular challenge is the right challenge to solve in VR.
To work with a large amount of dataset from the Twitter API.
I was initially interested in utilizing the Twitter API since it can provide more relevant information that can be used to create community network graphs.
The initial project plan was to utilize the Twitter API to generate community networks. However, with recent changes regarding Twitter API and its price plans, I changed the original project plan and used some of the datasets I have gathered.
VR Network Visualization Software
My initial plan was to evaluate existing VR network visualization software after initial research for the course project 1 proposal. During the first phase of the project (developing 2D network graphs that will be used in comparison to VR ones), I quickly realized that most of the software was turned private. One such example was Aviar Graph software, which generates VR networks based on Neo4j .Net driver.
Therefore, I had to learn the fundamentals of Unity and gather scripts for the Force-Directed network generation approach.
The project timeline can be found here.
In order to evaluate VR visualization as well as accomplish the aforementioned project goals, two versions of network visualization were created:
2D network visualization using Gephi
3D VR network visualization using Unity
Unity Project Summary
With the developed Unity app, users can:
load a data file into the app to create a force-directed graph of the input nodes in VR
interact with individual nodes and examine connections among the nodes
teleport to move around the environment
Through in-class activity focusing on the comparison of the two versions of network visualization, I could gather the responses and feedback as displayed below.
Overall, through comparison questions (asking which one performs better: Gephi vs. VR):
Gephi was more effective in terms of visualizing communities (60% vs. 40%). Users also found that analyzing using Gephi was easier compared to using the prototype Unity application.
Some of the features users wanted to have for the Unity app were:
flyover and rotation (smooth)
ability to scale the graph
real-time collaboration in VR
Noticeable benefits of the VR application were:
the ability to have a large network graph where users can go inside to examine individual nodes
having visualization in 3D
Since the Unity force-directed graph application was made for project 1, it had several shortcomings as mentioned in the in-class activity evaluation.
When visualizing networks, it is important to give the user:
the ability to scale the entire graph
options to scale each node depending on the connectedness to other nodes.
Moreover, I received another valuable feedback from Project 1, which is that the 3D space visualization of nodes and edges requires precise calibration of mass, edge transparency, and other physics settings to maintain well-clustered networks. During the project, I struggled to obtain a stabilized force-directed graph since graph script primarily utilizes spring joints and colliders. Moving forward, I plan to explore different algorithms to cluster nodes instead of relying solely on the force-directed approach. Additionally, I aim to enable scaling of the graph and nodes based on the number of connections within the network.
Future work and Conclusion:
Overall, in order to develop an effective network visualization tool in VR, users should be able to scale the network as as well as to see nodes in different sizes — design similar to that of Gephi. Comparison and evaluation of the VR application with Gephi should be conducted again when the prototype has those vital featurse implemented.