This website uses cookies, pixels, and similar technologies (“cookies”), some of which are provided by third parties, to enable website features and functionality; measure, analyze, and improve site performance; enhance user experience; record user interactions; and support our advertising and marketing. We and our third-party vendors may monitor, record, and access information and data, including device data, IP address and online identifiers, referring URLs and other browsing information, for these and similar purposes. By clicking “Accept all cookies,” you agree to such purposes. If you continue to browse our site without clicking “Accept all cookies,” or if you click “Reject all cookies,” only cookies necessary to operate and enable default website features and functionalities will be deployed. If you are visiting our Site in the U.S., by using this site or clicking “Accept all cookies,” “Reject all cookies,” or “Preferences,” you acknowledge and agree to our Privacy Policy, Cookie Policy, and Terms of Use.

library

Blog
/

Introducing Atlas: A Tool for Visualizing Deep Tech Relationships at Scale

Joanna Johnson, Senior Software Engineer / George P. Sieniawski, Senior Technologist
Read the Paper
Want to map out a startup ecosystem? Looking to analyze patent citation networks or venture investing networks? Another set of connected entities that might be easier to define in terms of nodes/edges? Atlas has you covered.

IQT is pleased to release Atlas, a general-purpose visualization tool for creating and exploring interactive graphs in a browser.

Built using Python and Dash Cytoscape, Atlas transforms your data into nodes and edges, allowing you to explore part-to-whole and part-to-part relationships. Want to map out a startup ecosystem to see who's who in a high-growth segment of the marketplace? Looking to analyze patent citation networks or venture investing networks? Working with another set of connected entities that might be easier to define in terms of nodes and edges? Atlas has you covered.

Above: an Atlas visualization showing 11  IQT Labs projects (the outermost nodes), grouped into four themes (Distributed Sensing, Trusted Systems, Information Quality, and Better Models, in this example) branching off a central  IQT Labs node in orange

We built Atlas originally as a tool for keeping track of  IQT Labs projects and research themes (example above), yet soon realized this visualization capability could help colleagues and mission partners explore technology innovations and Mission Economy startups. To make the tool more robust, we enlisted the help of the IQT Software Development Team, which transformed our initial proof of concept into a more user-friendly visualization tool for general audiences.

We recently open sourced Atlas and have begun accepting contributions to our public and internal repositories.

Why Use Atlas?

A lightweight, user-friendly tool for graph data exploration, Atlas can ingest and display datasets consisting of tens of thousands of nodes with the ability to zoom, resize, and rearrange the entire graph in a matter of seconds.

While there are several existing software libraries with similar capabilities (such as Gephi and Sigma.js), Atlas differs in that it not only visualizes nodes and edges, but also provides contextual information and node metadata on demand. For instance, nodes can link to GitHub codebases, YouTube videos, or FactSet company listings, among other multimedia documents.

In addition, Atlas allows graph-to-graph linking, enabling users to disaggregate complex datasets into audience-specific views, which makes data storytelling easier.

Above: an Atlas visualization showing the Star Wars character universe

Main Features

The Atlas user interface (UI) organizes individual graph visualizations into cards, as shown below:

Above: a card in the Atlas UI summarizing four key pieces of graph metadata: (1) the title of the graph visualization in Atlas, (2) the visualization layout algorithm the author selected, (3) a user-specified description of the data, and (4) the author of the visualization and the date of the most recent change to the graph.

Clicking on a card takes you to the corresponding Atlas visualization, where you can explore individual nodes, search for keywords of interest, modify graph settings, and view additional data associated with a node by clicking on it.

Above: a Dash Cytoscape visualization in the Atlas UI. As before, there are 11  IQT Labs projects (the outermost nodes), grouped into four themes (Distributed Sensing, Trusted Systems, Information Quality, and Better Models, in this example) branching off a central  IQT Labs node in orange. Note the search box in the lower left-hand corner of the information panel and the settings gear at the lower right-hand corner.

Creating Your Own Atlas Visualization

Atlas gives users several options to define their preferred operating environment, input data structure, and visualization output format.

Once you've installed Atlas, the easiest way to get started is clicking on the plus icon (+), filling out four required fields, and loading a JSON file containing your data.

Above: the Create your Graph window in the Atlas UI

You then select from five different layout options below, accessible by clicking on the settings gear at the lower right-hand corner of your Atlas visualization.

Alternatively, you can run Atlas locally using Docker, which provides 13 layout options. For setup instructions, check out the Atlas Developer Quick Start Guide.

Atlas can read in two types of JSON data structures: an array of defined nodes and edges or an array of child/parent relationships. For convenience, the Atlas README provides an example of each.

A Final Word of Caution

Above: actor Charlie Day showing clear signs of apophenia on "It's Always Sunny in Philadelphia" (S4:E10); © FX Networks

While Atlas can handle datasets consisting of tens of thousands of nodes, it's easy to go overboard here. As a group of IQT colleagues noted several years ago:

"As networks [of nodes and edges] become larger and more complex, maintaining legibility is challenging... Without a fixed visual reference point, it is nearly impossible for humans to use this type of display to make a visual comparison of different states of the network. (e.g., Discovering when new nodes have appeared is confusing at best, impossible at worst.) Additionally, the same network data can look very different, depending on parameter settings."

For this reason, we recommend making judicious choices about how many nodes and edges you include in your dataset to avoid creating illegible visualizations in Atlas.

Although Atlas grew out of an  IQT Labs project exploration use-case, we imagine the tool could be adapted for other applications where users would benefit from the ability to explore relationships among nodes and edges. If you are interested in using or adapting Atlas, please check out this code repo and README, which are available to the public for reuse/modification under the Apache 2.0 License.

Please note that we are not responsible for what you do with Atlas. When you load your own datasets in Atlas, you are responsible for managing the security, integrity, access control, and intellectual property rights associated with your data. There is no warranty of any kind provided with the information, code, and binaries in the Atlas repo. Neither IQT nor  IQT Labs are available to provide maintenance or support. You are solely responsible for your usage of Atlas.

Related blog posts

To learn more about prior work in related areas, please check out:

  1. ArQ Gatekeeping, IQT Blog, Dec. 2020
  2. Organizing Deep Tech at Scale, IQT Blog, Nov. 2020
  3. Dataviz.cafe: Find the right tool to visualize your data, announced Oct. 2019