Assignment 4 - Network Visualization - (50 points)
Due date: 4/23/2018 at 11:59pm
Objectives
- Get familiar with network visualization in Python
- Familiarize yourself with python visualization libraries
- Gain practice with networkx
Part 1 - Create and visualize a graph
For this part of the assignment, you need to create a graph by adding nodes and edges in a Python program using the networkx library. Visualize the created graph using matplotlib or plotly. (20 points)
Part 2 - Visualize a graph generated from CSV files
For this part of the assignment, read in data for a graph in the form of nodes and edges from a CSV file. This detailed tutorial on Exploring and Analyzing Network Data with Python can serve as a great starting point. Create your own CSV files of nodes and edges and visualize them using plotly or python-igraph. (30 points)
Extra credit
Incorporate any of the network analysis features in networkx to highlight nodes, edges, clusters, and so on in your graph for Part 2. (5 points)
Submitting the assignment
- For this assignment, submit all your python code along with the expected output (screenshots and a report with captions) or a python notebook.
- Your report/notebook must contain your name, title of the assignment - "Network Visualization using networkx"
- Submit a zip file that contains all the contents of the folder - report, python code, and screenshots or the python notebook on Canvas.