How to use relationship graphs


Relationship graphs in mergeflow show how objects (people, organizations, technologies, etc. identified by mergeflow) relate to each other.  By “relate to each other”, we mean “appear in a common context in the content of a document”.  Here we illustrate how relationship graphs work.

As topics, we selected “named entity recognition”(cf. and “social network analysis” (cf.  As data source, we selected research project descriptions from SBIR, a US government organization that funds research at small businesses (

Our questions then were (1) how companies and experts relate to each other, and (2) whether there are companies or experts who work on both topics (i.e. named entity recognition and social network analysis).

We start off by searching for “named entities” OR “social network analysis” (please click on the screenshot in order to see a larger version):

search-queryThen we group our results by “site”, and select “Company” as tag type:


Clicking on “Open graph” then opens a relationship graph in a new tab:

  • Green nodes in the graph are companies identified by mergeflow.
  • Yellow nodes are our search terms.
  • Node size is a function of the number of documents (e.g. “21st Century Technologies” is mentioned more often than “Aptima”).
  • Edge thickness is a function of the number of common contexts (e.g. “Cymfony” and “named entities” share a common context more often than “Language Weaver” and “named entities”).

Here is a screenshot of the graph; the entity classes menu is expanded already because we want to add “Person” as a further object type:


After adding the “Person” category, the graph looks like this:

company-person-graphThe graph shows, among other things, that companies and experts related to “named entities” are not connected to the ones working on “social network analysis”.

Here is how you can navigate the graph:

  • Use your mouse wheel for zooming in and out
  • Use Strg+F to search in the graph
  • Move the mouse over a node in order to see its adjacent nodes
  • Move the mouse over an edge in order to see its adjacent nodes
  • Click on a node to see documents related to the node
  • Click on an edge to see documents related to both nodes adjacent to the edge
  • Right click on a node in order to remove the node from the graph

For instance, we could use our browser’s standard search (Strg+F) to search for “applied minds” (

search-applied-mindsThen move our mouse over “APPLIED MINDS” to see its adjacent nodes:

node-mouseoverClicking on “APPLIED MINDS” opens a new tab, showing the relevant document:


Clicking on the document’s title then takes us to the source (

applied-minds-sbirOf course, now we could go back to our graph to look at the network of Applied Minds in general.  In order to do this, we first search for “applied minds” in our graph, i.e. click on the green search terms field (cf. red arrow) and replace our original search by “applied minds”:

graph-search-applied-mindsNow “applied minds” is the yellow node because it is our search query:

applied-minds-general-networkThe graph shows that Applied Minds also shares context with Northrop Grumman.  In order to see what this context was, we move our mouse over the edge connecting “applied minds” and “Northrop Grumman”…

applied-minds-northrop-grumman-edge…then click on the edge, which opens the underlying document in a new tab…

app-minds-northr-gr-doc…and, if we are interested, visit the original source (

am-ng-sbir-1The abstract of this project also describes the connection between Applied Minds and Northrop Grumman (cf. yellow highlighting in the text):