## **[CSCI 1951T] Dave's In-Class Activity**
*In-Class Exercise: 30 minutes*
#### Downloads(if you have not already)
- Download Gephi [here](https://gephi.org/)
- Download Datasets and APK file [here](https://drive.google.com/drive/folders/1zQ-o3FXbsV9SzURisZKbP8ErvwKhyQWw)
- ---
### Project: Visualizing Community Network in VR
#### Introduction
Community detection algorithms are used to evaluate how groups of nodes are clustered or partitioned, as well as their tendency to strenthen or break apart.
Examples of Community Detection algorithms
- Louvian
- Modularity Optimization
- Label Propagation
- Local Clustering Coefficient
(Optional) if you are interested in Community Detection, feel free to read [this article. ](https://www.analyticsvidhya.com/blog/2020/04/community-detection-graphs-networks/)
Today, we are going to create some community networks in 2D using **Gephi** and in **VR** using force directed graphs.
### Gephi(7 minutes)
Once you have Gephi and datasets downloaded,
- [ ] Open Gephi
- [ ] Click **Les Miserables.gexf** option on Welcome window
![](https://i.imgur.com/3ykUR8J.png)
- [ ] Click **Okay for Import Report page** (Note that we are going to work with 77 nodes(characters) and 254 edges).
- [ ] Once you click, you will see a graph similar to the image below
![](https://i.imgur.com/DBrSskR.png)
- [ ] Navigate to label menu
![](https://i.imgur.com/rKSjED7.png)
- [ ] Click "**Labels**" tab and click again for **Node** option.
![](https://i.imgur.com/rtYojaV.png)
The size of each node indicated connectedness to other nodes while each comminity has been color coded.
Compare the graph with [this character map](https://www.coursehero.com/lit/Les-Mis%C3%A9rables/character-map/).
- What's different/similar/interesting?
- [ ] **Take a screenshot of the Gephi Graph**
### Generating Graphs with Gephi (7 Minutes)
**[STEP1]** : if you want to skip this step, feel free to move on to **Step 2!**
- [ ] Open a new project
- [ ] Navigate to **Data Laboratory Menu**
![](https://i.imgur.com/tHQnnWD.png)
- [ ] Click **Import Spreadsheet**
- [ ] Find Downloaded File and open DataSet1.
- [ ] Import **Nodes1.csv **
- [ ] When you get to Import Report, **make sure to click Append to existing workspace option.**
![](https://i.imgur.com/fPxBrXj.png)
- [ ] Once Nodes1.csv has been imported, click on Edges tab and repeat the same process. This time, we are importing **Edges1.csv file**.
![](https://i.imgur.com/C7Dok0N.png)
- [ ] **Now we have 14,115 edges and 1000 nodes!**
**[Step2]**
For time being, we will skip other steps and download InClassActivity.gephi file from [here](https://drive.google.com/drive/folders/1zQ-o3FXbsV9SzURisZKbP8ErvwKhyQWw).
- [ ] Open the Gephi file and explore
- [ ] **Take a screenshot of the graph**
![](https://i.imgur.com/i7RmyE0.jpg)
### Community Force Directed Graph generated in Unity
What is Force Directed Graph?
Three main physical forces:
- Repulsion
- Springs
- Network energy
In the model, nodes are treated like-charged particles that produce a repulsive force that moves them apart.
For this class, I am developing a Unity VR app for Force Directed Graph visualization in VR.
### Steps
**Step1: SideQuest**
If you have completed Lexi's activity, you should have SideQuest set up ready to download the APK file from the [Drive](https://drive.google.com/drive/folders/1zQ-o3FXbsV9SzURisZKbP8ErvwKhyQWw).
If you need to set up SideQuest, [follow this tutorial. ](https://www.vrwiki.cs.brown.edu/vr-hardware/oculus-quest-2/sideloading-apks-using-sidequest)
**Step2: Uploading the file**
With your headset connected to your computer, load the .apk file through Sidequest by clicking "install apk file" option.
**Step 3: Opening the App**
With your headset on, go to Apps and navigate to "Unknown Sources".You should be able to select the apk file!
Run the project and explore!
- Data from Les Miserable
- each node has Character Name
- You can teleport by pressing left controller trigger
- You can turn with both thumbsticks
- you can grab and throw objects
### Notes
I am still finishing up the project. Therefore, the graph is static for now.
- [ ] **Take a screenshot**
![](https://i.imgur.com/sgtyTzJ.jpg)
## Evaluation
Please fill in this [exit ticket!](https://forms.gle/QFp9HwBM4DWckD3m8)