visualization design resources

A not so current (as of Sept. 2015) and incomplete list of resources for visualization design, biased toward resources used by or familiar to members of the UBC InfoVis group.


jump to: choosing vis tools | inspiration | data repositories | data wrangling + eda | vis design | sharing your work



Survey websites, recent books, and visualization practitioners and researchers on twitter.

Image: treevis.net

Visualization Survey Websites

Interactive meta-visualizations based on surveys of existing visualizations and/or technical papers.

by data abstraction:

by domain:

by platform:

Recent Books About Visualization

Recently published books discussing / showcasing the state-of-the-art in interactive visualization.

Image: datastori.es/

Data Stories podcast

A podcast on data visualization with Enrico Bertini and Moritz Stefaner.

Image: twitter.com

200+ vis researchers and practitioners on twitter

A public list of people tweeting about information visualization, visual analytics, information graphics, statistical graphics, visual perception, and data science in general. Compiled by @mattbrehmer.

Publicly available data repositories / directories.

Image: enigma.io

enigma.io

Billions of public records published by governments, companies and organizations. Free access plan available for non-commercial and open source use.

MeepleStats

"Statistics about pretty much every boardgame ever released" by M. Zelnik.

DataIsPlural

Amazing weekly newsletter of interesting/quirky datasets by Jeremy Singer-Vine.

browseable weekly lists

single master spreadsheet with everything

Visualizing Data's list of data sources

Compiled by A. Kirk of Visualizing Data. Select the 'Data Sources' tab.

VAST Challenge

Datasets from the annual Visual Analytics Science and Technology conference challenge contest.

VAST Challenge 2021

VAST Challenge 2021

VAST Challenge 2020

VAST Challenge 2019

VAST Challenge 2018

VAST Challenge Links 2006-2017

Repository of previous VAST and InfoVis contests 2002-2006

Visual Analytics Benchmark Repository with direct links to Challenge datasets from 2003-present

Image: data.gc.ca

Open government data

Download census data, tables, and reports in various formats. Similar services exist in many other country / province / state / municipality jurisdictions, such as:

Resources and tools for managing, wrangling, cleaning, and transforming data, as well as for exploratory data analysis (EDA).

OpenRefine

"OpenRefine (formerly Google Refine) is a powerful tool for working with messy data: cleaning it; transforming it from one format into another; extending it with web services; and linking it to databases like Freebase."

Google Fusion Tables

"Fusion Tables is an experimental data visualization web application to gather, visualize, and share data tables."

Web scraping with ScraperWiki, morph.io, and kimono

Browser-based web scraping (in Python, R, Ruby, etc.) and data analysis tools with ScraperWiki: schedule recurring scraping and append to previously scraped data. Also check out morph.io, another web-based scraper with GitHub integration, or kimono, a web-based scraper that doesn't involve writing any code.

D3 Deconstructor

From the UC Berkeley Visualization Lab, "the D3 Deconstructor is a Google Chrome extension for extracting data from D3.js visualizations."

JS Data

From the Bocoup Data Visualization Team: Learn JS Data: Data manipulation, munging, and processing in JavaScript… This guide teaches the basics of manipulating data using JavaScript in the browser, or in node.js. Specifically, these tasks are geared around preparing data for further analysis and visualization."

datalib

From the UW Interactive Data Lab, datalib is "a JavaScript data utility library. It provides facilities for data loading, type inference, common statistics, and string templates."

Image: dat-data.com

dat

"Build data pipelines: dat is an open source project that provides a streaming interface between every file format and data storage backend."

Data Wrangler (Alpha)

"Wrangler is an interactive tool for data cleaning and transformation. Spend less time formatting and more time analyzing your data." Wrangler was a project from S. Kandel and the Stanford vis group, and has evolved to become part of Trifacta's product offering.

Profiler + Datavore

Like Wrangler, Profiler and Datavore are projects from S. Kandel and the Stanford vis group. Profiler is "a visual analysis tool for assessing quality issues in tabular data… a system for integrated statistical and visual data analysis", and is supported by Datavore, a "small, fast in-browser database engine written in JavaScript".

R + RStudio + some useful packages

The R statistical programming language and the RStudio IDE are powerful tools for data analysis, management, and transformation.

Python + pandas + matplotlib

Data analysis using the Python programming language, the pandas data analysis library, and plotting with the matplotlib library.

Image: mathworks.com

Matlab

Data analysis with the Matlab scientific programming language and IDE.

Beaker notebook

"Beaker is a notebook-style development environment for working interactively with large and complex datasets. Its plugin-based architecture allows you to switch between languages or add new ones with ease, ensuring that you always have the right tool for any of your analysis and visualization needs."

Applications and programming languages or libraries for various stages of visualization design.

similar surveys:

datavisualization.ch's 2012 survey of programmating- and non-programmating-based visualization tools, including those related to maps, those for creating basic charts, data manipulation and wrangling, and color.

Visualizing Data (A. Kirk)'s interactive resource list; filter by tools relating to several tags, including data handling, charting, programming, multivariate, mapping, web-based, specialist, colour.

Scott Murray's list of alternatives to D3.js: "D3 might not be perfect for every project. Sometimes you just need a quick chart and you don’t have time to code it from scratch. Or you might need to support older browsers and can’t rely on recent technologies like SVG."

J. Heer's useful resources list for the University of Washington's graduate course on Data Visualization (CSE512) (Spring 2015).

M. Adil Yalçin's faceted Keshif browser of Data-Visualization Tools and Books.

Tools and Libraries for Building Web-based Data Visualisations by P. Cook.

New [data visualization and infographic creation] Tools and Resources of 2014 by Visualoop.com.

Image: balsamiq.com

Balsamiq

Windows / Linux / Mac OS X application for developing non-interactive "sketchy" wireframes ($80 USD).

Image: axure.com

Axure

Windows / Mac OS X application for developing interactive mockups without programming (free for students).

Image: omnigroup.com

OmniGraffle

OS X application for drawing diagrams ($60 USD for students). Similar to MS Visio.

Tableau Desktop

Windows / Mac OS X application for data analysis and developing interactive visualization dashboards, with ability to publish online (free for students, 1 year license).

Image: wikipedia

Plotly

"Plotly is an online analytics and data visualization tool. Plotly provides online graphing, analytics, and stats tools for individuals and collaboration, as well as scientific graphing libraries for Python, R, MATLAB, Perl, Julia, Arduino, and REST." - Wikipedia (Enterprise and education pricing available)

Mirador

"Mirador is a tool for visual exploration of complex datasets. It enables users to discover correlation patterns and derive new hypotheses from the data." (desktop application for Windows / Mac)

Raw

"The missing link between spreadsheets and vector graphics… Raw is an open web app to create custom vector-based visualizations on top of the amazing D3.js library through a simple interface.

Datawrapper

"Create charts and maps in just four steps. [Datawrapper] reduces the time you need to create visualizations from hours to minutes."

Image: manyeyes

IBM's Many Eyes

Web-based application for exploring and creating visualizations from existing or uploaded datasets. Requires Java plugin.

Lyra

U. Washington Interactive Data Lab's web-based visualization design environment, proposed in a 2014 EuroVis paper by A. Satyanarayan and J. Heer.

iVisDesigner

D. Ren's's web-based visualization design environment, proposed in a 2014 InfoVis paper by D. Ren, T. Hollerer, and X. Yuan.

Bertifier

A web-based tabular visualization design environment absed on Bertin's matrices (see image to the left), proposed in a 2014 InfoVis paper by C. Perin, P. Dragicevic, and J.-D. Fekete.

Gephi

Windows / Linux / Mac OS X application for graph visualization.

Node XL

A graph visualization template for MS Excel.

Image: d3js.org

D3.js

D3.js (Data-Driven Documents) is a Javascript Library for "manipulating documents based on data". Since appearing in a 2011 InfoVis research paper by M. Bostock et al., D3.js has become a standard for developing custom data visualization online. No browser plugins required; each mark in a visualization has a corresponding SVG element, and styling is handled using CSS.

The precursor to D3.js was Protovis (a 2009 JavaScript library by the same authors). Earlier predecessors include prefuse (2005) and Flare (2008), which required Java and Flash browser plugins, respectively.

Processing

Processing is a Java-based programming language which has been used extensively for data visualization since its inception in 2001. Requires a Java plugin to be viewed in a web browser.

R / Shiny

Shiny is an R package used to generate web applications containing interactive data analysis and visualization elements. No knowledge of HTML, CSS, JavaScript is required. Code is written in R.

Vega & Vega-Lite

Trifacta's "Vega is a visualization grammar, a declarative format for creating, saving and sharing visualization designs. With Vega you can describe data visualizations in a JSON format, and generate interactive views using either HTML5 Canvas or SVG."

Idyll

Idyll is a tool that makes it easier to author interactive narratives for the web. You can create documents that use common narrative techniques such as embedding interactive charts and graphs, responding to scroll events, and explorable explanations.

Visualizations with React

→ "react-vis is a collection of react components to render common data visualization charts, such as line/area/bar charts, heat maps, scatterplots, contour plots, pie and donut charts, sunbursts, radar charts, parallel coordinates, and tree maps."

Semiotic is also a visualization framework for React but uses a different approach. Instead of providing a set of generic chart types, Semiotic uses a layer model to separate interactive and annotation elements from graphical elements representing data.

deck.gl

deck.gl is a WebGL-powered framework for visual exploratory data analysis and with a strong focus on geospatial data

regl

regl is a framework that adds an abstraction layer to WebGL. By replacing the WebGL API with fundamental abstractions (resources and commands) it makes WebGL programming much easier.

Image: www.bram.us

Two.js.

Two.js by Jono Brandel "is a two-dimensional drawing API geared towards modern web browsers. It is renderer agnostic enabling the same API to draw in multiple contexts: SVG, Canvas, and WebGL."

three.js.

three.js "is a library that makes WebGL - 3D in the browser - easy to use. While a simple cube in raw WebGL would turn out hundreds of lines of Javascript and shader code, a Three.js equivalent is only a fraction of that."

JavaScript InfoVis Toolkit and PhiloGL.

The JavaScript InfoVis Toolkit (JIT) and PhiloGL were developed by N. G. Belamonte. The JIT is intended for "Web Standards based interactive data visualizations", while PhiloGL is a "WebGL Framework for advanced data visualization, creative coding and game development".

Python, Bokeh, and iPython Notebook

Bokeh is "a Python interactive visualization library that targets modern web browsers for presentation".

iPython Notebook is "web-based interactive computational environment where you can combine code execution, text, mathematics, plots and rich media into a single document".

Basic JavaScript chart Libraries

The following JavaScript libraries are used to generate basic / familiar / reusable charts (bar charts, line graphs, pie charts, etc), without having to specify placement of marks (as in D3.js).

Image: pixabay.com.

Tools and services for presenting your creations online.

bl.ocks.org

"A simple viewer for code examples hosted on GitHub Gist" by M. Bostock.

JSFiddle

"Test your JavaScript, CSS, HTML or CoffeeScript online with JSFiddle code editor."

Image: shinyapps.io

Shiny Server and ShinyApps.io.

A free, open source server for serving multiple R/Shiny applications, or opt for tree online hosting with ShinyApps.io.

See R / Shiny above in vis design: programming.

Everything except the chart

An IEEE VIS 2014 Tutorial by Dominikus Baur and Moritz Stefaner. This tutorial surveys tools and frameworks for deploying visualization online (but strictly doesn't cover visual encoding itself).

Last modified: Sept. 29 2015 by Matt Brehmer