Game of Thrones – Co-occurrence Network of Characters

Lab Reports, Networks

Game of Thrones Network

The topic of this information visualization network lab is the co-occurrence network of characters in A Song of Ice and Fire, or the five books in Game of Thrones that fall under that series. This book and HBO series has become a world-wide phenomenon over the past decade. I was interested to see if there were any network datasets from the extensive array of material provided by such a lengthy and complex fictional series. As there are a number of different leading houses, principal characters and connections throughout the anthology, I hoped to come across a dataset that analyzed this complexity through statistics. With all of  the characters, with even lengthier names in some cases, it was essential to produce a visualization that did not confuse the viewer even further, but explained information about the networks in the A Song of Ice and Fire series. I hoped to find a dataset of this nature before beginning my design with Gephi.


Inspiring Visualizations

I was inspired by various information visualization networks about character co-occurrence and linkage, my research topic of interest.

The first visualization that caught my eye was the Les Misérables network example in Gephi. Victor Hugo’s Les Misérables is my favorite book and I was fortunate enough to see the Broadway musical when I was in grade school. It was exciting to see an info vis that related to the connections of all the fictional characters within a book. I enjoyed the layout of the graph, with different color distinctions and sizes of the nodes. It was also helpful to have the character names on the nodes, to properly understand the info vis. However, the clutter of names made it difficult to take in the information, making it difficult to properly read the names of the minor characters. In a sense, this configuration implied a sort of information overload.

I liked this Romeo and Juliet visualization because the names of characters on every single node had been eliminated and only the principle character nodes were labeled, with a general distinction being given as well between the Montagues and the Capulets. I was inspired to do something similar to this with my Game of Thrones network that includes different houses. The total number of characters and network density at the bottom of the page was helpful as well. It would have been nice to have added another layer by making these visualizations interactive, allowing for viewers to know the names of the minor character notes through a search or floating function.

Finally, I found this Star Wars visualization that appears to use a similar dataset to what I hope to find for Game of Thrones, my network visualization. The way the nodes are spaced allows for the names of the characters to be written without creating any overlap. I will try to follow this design if I can when I produce my own information visualization of this dataset. Again, minor characters were left blank because of the amount of connections. I hope to relay some information about the house or group the minor characters in my visualization pertain to or make my visualization interactive with the JS Sigma plug-in in Gephi.


Materials and Procedures

To make my Game of Thrones co-occurrence network lab I used the Gephi software and a public dataset that I found on the GitHub website. The datasets that I downloaded from GitHub were already set as CSVs but they were broken up into five separate documents, one for each book of the A Song of Ice and Fire series in Game of Thrones. First, I combined the 5 CSVs into a single document and then imported the file into a new Gephi project. I made sure to classify this new project as an undirected edge table, as the information I downloaded was set for this type of format, with a source and target string and weight and book integers as the attributes. In Overview I ran the diameter, graph density, average clustering coefficient, average degree, average path length and modularity measurements to help with the design later. Then in layout I first ran Force Atlas 2, with ‘prevent overlap’ and ‘dissuade hubs’ selected. In Preview I set the color of the nodes by modularity class and the size of the nodes by degree.


As the overlap of the nodes and labels continued to be an issue, I changed the layout to Expansion in the Overview. This provided more spacing between the nodes, so that overlap was no longer an issue. I encountered huge problems with the JS Sigma plug-in. It continued not to work under any internet browser, be it Chrome, Firefox or Safari. The free Adobe Illustrator supplement I downloaded called Inkscape also continued not to work, even after I downloaded XQuartz and troubleshot with various other design editors. After trying to add an iframe to the script of the html document, per Professor Sula’s suggestion, I still came across issues. Finally, I was able to use Pixlr Pro as my editor, since it was under a free seven day trial.

Instead, here is the png image of the Game of Thrones Character Co-occurrence:

Future Directions

In the future I hope to make this network live so that the minor characters and legend can be accessible to all. Learning how to create an index.html website will allow me do this. For my previous IT course, we used Opera to make the index.html site live. I’m not sure if that would be useful for this specific Gephi code. I would also like to add more elements to the live site, such as images and accompanying text. It would be interesting to attach additional information, through Illustrator or a similar software, to give further details about the subsequent characters within the network.