So the fundamental question for this week is then, how do you visualize network data? That's what we need to discover. I like to organize the most fundamental techniques into these diagram, into a few categories. So first of all the main distinction that I like to make is between techniques that use what I call Node-link diagrams. Which is basically all solutions in which network is visualized by using, by depicting nodes as markers, small dots and the relationships, the edges between the nodes as links that connect them. And then as we will see later on, another common visual representation for networks is to use matrices. Now, within the category of node-link diagrams, we have two main sub categories. The first one is what is called Force-Directed Layouts, which I'm going to describe in a moment and the other category is those node-link diagrams in which the layout strategy is fixed, is not forced-directed and what force-directed means is going to be clear in a moment. That's exactly what I'm going to describe next. So, what is a force-directed diagram? How does it work? Well the basic idea is that, we have as I said, nodes that are represented by dots and the connection between the nodes, the dots is represented by a line. Now, what do we want to achieve? Well, we want to create a procedure or an algorithm to lay out the nodes in a way that they represent the structure of the network. There is a whole class of algorithms that is called Forced-Directed Layout algorithms, there are many many variants. And the basic idea is the following. So, for every node in the network, nodes are attracted one to another, so there is a force that attracts through the edges, the nodes. So, the nodes that are connected an attraction force. Okay? But at the same time, the nodes also have a repulsion force. Whether they are connected or not. Okay? So, now what happens is that, in order to create a force-directed layout, the procedure is the following. Initially, typically the nodes are plotted in a random location. Then what happens is that, for every single node, the force is applied on the node are calculated. And once again these forces come from the attraction force that comes from the connection that the node as we the other connections. And the repulsion force that the node has from the nodes that are around the node. Now, the sum of all of these forces is calculated and the result is one single sum of the force, which in turn gives a direction in an intensity of force with which these node should be moved. Now, at every step, this calculation is done for all the nodes and every node is nudged a little bit in the direction of the resulting force. So, think about it. Initially the nodes are plotted in a random position and at every round they are nudge that a little bit in the direction of the sum of all the forces. And this is done repeatedly for many many many iterations until the graph stabilizes in a given configuration. Now, as I said at the beginning, this represents a broad class of algorithms, is not just one single solution. What I presented here is the basic template and then there are many many different ways, many different algorithms they use different type of forces, different ways of finding the final configuration, different ways of creating the initial configuration and so on. So, I'm not going into the details of all these different algorithms, but I think what is really important for you to know is that, what all of these methods have in common, is the idea that the placement of the nodes depends on these forces that are applied on the nodes and the positioning algorithm that is applied on it. So before I conclude, I want to show you at least one example of one of these algorithms in action. So what I'm going to show you here is the animation of how the nodes starting from a random configuration little by little stabilize and converge into a final configuration, and this final configuration, eventually shows you the structure of the network.