One aspect of the people-centered data science that we do at Civis is social network analysis. Connections between people in the online or physical world can give us insight into how a population can be segmented or how information spreads in a community.
As we look to get the most extensive understanding of these network connections, we have turned to one open-source project, Gephi, a java-based tool for interactively exploring networks and creating attractive visualizations. For instance, below is a diagram we made to illustrate the polarization of the discussion around climate change on Twitter. There is a clearly separable block of users who are generally skeptical of climate science, and have relatively few connections to the larger community.
Gephi’s GUI allows users to explore a network and determine the layout parameters that work best, but it doesn’t allow the process to be automated once the best parameters have been determined. In furthering the usefulness of Gephi for our needs, we’ve created GephiForceDiagramTool, a command-line application that provides access to core functionality for creating force-directed graph diagrams using Gephi. And today, we’re happy to announce that we’re open sourcing it. The Gephi Toolkit allows users to access the underlying Java API for Gephi’s layout and rendering algorithms, but using the toolkit effectively requires a good deal of knowledge about Gephi’s internal data representation and processing model. Our goal with the GephiForceDiagramTool is to allow users to more easily automate the creation of force-directed graphs, providing a command-line interface that is simple to use, yet exposes the most important configuration options for diagrams of this type.
For instance, you can download a network data file representing adjacent adjective-noun pairs in the novel David Copperfield from M. E. J. Newman’s website, and create a diagram of the relationships using a relatively simple command:
Check out the documentation to learn more about all of these options. The resulting diagram looks like this: