Les Misérables Character Network Visualization



This lab project explored the network of characters in Victor Hugo’s novel, Les Misérables (1862). Hugo’s novel follows the lives and interactions of numerous characters in France leading up the 1832 June Rebellion in Paris. I read ‘Les Mis’ quite some time ago, and I can only recall the overall storyline and some of the individual character plots. As I am no longer familiar with the novel’s numerous characters and their relationships, I am interested in understanding the overall social network of the characters and their connectivity. Using an open source dataset produced in 1993, the goal of this project was to clearly distinguish groups of characters based on their connectivity, the most central characters in the novel and the degree of co-appearances occurred.


Visualization Inspiration

As the dataset applied in this project has been commonly used to demonstrate network visualization examples, I searched for visualizations of this subject that would help inspire my own designs. The first example that informed my design was a hypergraph network visualization that indicates the interactions between major characters in the novel Les Misérables. I liked the simplicity of this hypergraph network, especially the way in which characters were clearly separated by color and clustered into groups by their connectivity. However, this visualization is very condensed and does not clearly indicate which character nodes are linked by edges to other characters of the same group or corresponding groups. In addition, the visualization does not demonstrate which characters are most central in the novel or account for the co-appearances of characters. 


The next visualization that I examined was an arch diagram that highlighted the co-occurrences of characters in the novel. While this arch diagram does indicate groups of characters based on their connectivity, identifies the central characters, and accounts for co-appearances of characters through weighted edges, it is not the easiest graph to examine details in. As the characters are displayed along a horizontal axis, it is difficult to identity the degree to which characters are connected by following the arched weighted edges. This graph is most useful when trying to only understand which characters co-appear the most and the central characters of the novel.



I also examined this radial diagram visualization that identifies characters groups through color and which characters co-appear together through edges. I liked this visualization because it was easy to follow the edge lines that identity which characters co-appeared together. However, the edges of this visualization do not indicate which characters appear together more than others, and it is slightly difficult to read some of the character names around the circumference of the diagram.




For this lab project, I acquired the dataset “Les Misérables” sourced from the Gephi Github open source database. The software used to create visualizations from this dataset was the network-mapping program, Gephi. In creating my visualization I referenced the Gephi tutorials and the class network-mapping lecture. I also utilized the Paletton and Adobe color wheels, found on the course LMS site, to assist with selecting the color palate of the visualization.



The “Les Misérables” dataset was downloaded as a GML file. As the dataset was clean and did not require any adjustments I was able to easily upload it into Gephi. Once in Gephi, I ran applied a few Statistics frameworks (Average Degree, Network Diameter, Graph Density, Modularity, and Average Path Length) on my data, which would allow my social network to be analyzed by program. Next, I applied the Force Atlas 2 layout to give my network an arrangement and shape. I made some adjustments to the tuning, behavior and performance settings of the layout to give it the shape that it currently has. I then changed the appearance of my network’s nodes and edges by altering the colors and size. Within the preview settings, I also made adjustments to the nodes’ label size, the thickness and curvature of the edges, as well as the background color. I continued to make such adjustments until satisfied with my visualization.


Results & Discussion

It was interesting to see the entire network and how the characters had been organized and grouped together into modular communities. It was clear from the physical clusters and colors of my network to identify 6 groups of characters. In addition the node size, which was determined according to the node betweenness centrality, allowed for the characters that have the most connectivity to be easily identifiable in comparison to lesser-connected ones. As seen below, it is clear that Valjean is the key character of Les Misérables. Gavroche, Marius, Javert, Thenardier, and Fantine are clearly also central characters overall and within their own modular communities.


The weight (thickness) of the edge between each node also indicates how often co-appearances between characters occur throughout the novel. Therefore, a thicker the edge informs us that those characters appear together more often than those with a thinner edge. From this visualization, it is clear that Valjean and Cosette, Valjean and Marius, Valjean and Javert, and Cosett and Marius, are the four co-appearances that occur most often within the novel. It is interesting that while these character pairings appear most frequently together, Javert and Marius never directly appear together, and Javert and Cosette rarely appear together. As this close-up example indicates, this entire network is not fully connected but is rather a mesh network structure. Not all of the characters appear together, nor is there only one character that connects them to each other. Therefore, we can discern that if Valjean were no longer bridged within this network then the majority of characters would still be connected, and only a few lesser characters would be isolates.


Future Directions

While one could continue to conduct an analysis of each of the character’s co-appearances and weight of connectivity within Hugo’s novel, Les Misérables, it would be interesting as a future project to filter out characters that have less than a certain number of co-appearances. This filtered network visualization would enable specific relationships to be more easily identified and compared. I also think an interesting future project would be to add additional data to this network, such as the chapters or locations in which co-appearances occurred. From this information we would be able to see how frequently characters co-appear within specific chapters as well as how the relationship between characters develop throughout the course of the novel, chapter by chapter. In addition, by including location to our network filter, we would be able to determine in which locations characters most frequently co-appear throughout the novel. Creating these filters would add another element to understanding the connectivity of the Les Misérables character network.