Stack Overflow is a question and answer website for professional and enthusiast programmers. A now scrapped feature called Developer Stories allowed developers to create a profile and attach tags to it that reflected their skillset. This visualization is an attempt to show the relationships between these tags.
The first visualiation is a force directed graph (note: the graph links are undirected). Each node represents a tag that denotes a specific software tool or concept. The default node size is proportional to the number of developers that have that tag on their "story". Link width is proportional to the link strength, which is proportional to how correlated those two tags are (correlation coefficient * 100).
Hover over a node or link to see what nodes it links to, as well as information about it. Pan and zoom are also available.
There are also several options for node size that can be applied. They are: Size, Degree, Weighted Degree, Eigenvector Centrality, Closeness Centrality, and Pagerank
The second visualiation is an adjacency matrix showing the links between tag nodes. Each square represents a link between 2 nodes. The color of the square indicates the group of the node. An opacity filter is applied based on the strength of the link. For links between nodes of different groups, a mean of the group colors is used.
Hover over a link in the matrix to see information about it.
There are several interesting insights that can be drawn from observing the graph.
Primary data sourced from Kaggle Stack Overflow Tag Network
Notes on dataset:
This data was gathered in 2016/2017, so the sizes of nodes may not be accurate to modern development practices.
This dataset includes only a subset of tags used on Developer Stories. Tags that were used by at least 0.5% of users and were correlated with another tag with a correlation coefficient above 0.1 are included. This means that very sparsely used tags and tags that are not used with other tags were filtered out.
Visualization created with D3.js, Jquery, and Bootstrap
Data prep done in python (Jupyter Notebook) and Gephi
This Block by Mike Bostock was used as a template when starting the graph visualiation.
Node Scaling:
Ordering: