planetlabs / viewpoints

Viewpoints is a tool for visualizing high dimensionality data using linked scatter plots.
Apache License 2.0
63 stars 9 forks source link

Viewpoints

Viewpoints is an open source desktop tool, developed at NASA, for visualizing high dimensionality data by brushing linked scatter plots. This repo is a re-implementation of Viewpoints as a web application, making heavy use of WebGL.

In Action

Features

Large Data Sets

Viewpoints is designed to handle extremely large data sets such as the entire Tycho Catalog--over 1 million stars. When all stars are graphed using declination vs right ascesion, you can see the structure of the Milky Way.

The Milky Way

Fast Linked Highlighting

The primary feature of Viewpoints is that highlighting points on one graph will highlight those same points on all other graphs. This allows for deep data exploration and the discovery of trends that would otherwise not be visible.

For example, if we highlight just the stars of a certain color (the bottom quartile of the bottom left graph), we find that they preferentially appear in the central disk of the galaxy and not in the periphery:

Star Location and Color

Alternatively, if we highlight just the stars with a high error in their right ascension measurement (right side of the bottom right graph), we tease out the precessing circles that characterize the observation pattern of the telescopes that created the catalog.

Precessing Circles

Linked highlighting is designed to work extremely quickly--introducing < 100 ms of latency on most systems for most data sets.

Thumbnail Previews

If your dataset contains columns which are links to thumbnails, Viewpoints will automatically recognize them and show you thumbnails in place of a scatter plot. To trigger this behavior, set the X axis of one of the scatter plots to the thumbnail column you want to view. This is especially helpful for data sets relating to deep CNN's.

Yahoo Flickr Creative Commons 100M

Pan and Zoom

To Pan: click and drag while holding (Windows use windows key)

To Zoom, click and drag while holding alt (Windows use ctrl).

The Milky Way, Zoomed

To Use:

Try it out live!

When the page loads you'll see a button to upload a csv file. There are several interesting data sets curated on github and many more from data.gov

Note: The data you use never leaves your computer. All processing happens on your local machine.

To Compile and Run:

The tool is written using the React framework. It is compiled using Node and npm, which you must have pre-installed.

git clone https://github.com/planetlabs/viewpoints.git
cd viewpoints
npm install
export NODE_ENV=production    # optional, but makes it run faster by not doing React's Proptype checks
npm start

Then open up a browser to

localhost:8080