Visualization


This is a list of miscellaneous resources I’ve come across dealing with data visualization in several forms.

The Graphs and Graphing and Visualization pages will be subsumed by this one in the fullness of time.

Ratings are entirely subjective based on my interest.

Charting and Plotting

Date Link Type Formats Rating Notes
2016
May 21st XKCD plots in matplotlib Python Multiple ★★★★★ Because real life mimics comics sometimes.
May 8th Vega Multiple Multiple ★★★★★ a declarative format for creating, saving, and sharing visualization designs, powering a number of tools.
2015
Dec 7 d3.compose JavaScript SVG ★★★★★ Another D3 extension for composing charts
Mar 18 Textures.js JavaScript SVG ★★★★ An amazing D3 add-on that provides textured fills.
2014
Nov 14 MetricsGraphics.js JavaScript SVG ★★★★ Another D3 wrapper, with nice features for dashboards.
Aug 7 Chartist JavaScript SVG ★★★ Interesting approach to responsiveness, not many features.
Jul 28 Vincent Python SVG ★★★★ Glue for creating charts in iPython notebooks
Bearcart Python SVG ★★★★
Jul 25 Bokeh Python Multiple ★★★★ Very impressive for server-driven rendering.
Jul 11 CanvasXPress JavaScript Canvas ★★★ Not very useful to me, but has a few unusual plot types, like heatmap and Venn diagrams.
JSXGraph JavaScript SVG ★★★★ Excellent for interactive mathematics.
dimple JavaScript SVG ★★★★ Yet another D3 wrapper
dygraphs JavaScript Canvas ★★★★ Very sophisticated.
xCharts JavaScript SVG ★★★ Simple and uncluttered.
C3.js JavaScript SVG ★★★★★ Provides a very interesting set of options.
Peity JavaScript SVG ★★★ Good for sparklines.
Jun 26 Epoch JavaScript SVG ★★★★★ Real-time charting done sensibly
Jun 24 BlockSpring JavaScript Multiple ★★★★★ A whole site devoted to modular visualization
Jun 10 dc.js JavaScript SVG ★★★★★ A charting library based on D3 with native crossfilter support
2013
Nov 15 chartjs JavaScript SVG ★★★★ Nice design, but free only for non-commercial use.
Nov 11 HighCharts JavaScript SVG ★★★★ Free for non-commercial use. Constantly updated, but somehow I just can’t bear it.
Oct 1 ChartJS JavaScript Canvas ★★★★★ Simple, straightforward, easy to use.
2012
Nov 28 XKCD charts in D3 JavaScript N/A I just had to make note of this.
Oct 30 crossfilter JavaScript N/A ★★★★★ A library for exploring large multivariate datasets in the browser.
Jul 12 Rickshaw JavaScript SVG ★★★★ Another D3 wrapper.
May 3 nvd3.js JavaScript SVG ★★★★★ A simplified D3 wrapper that I found terribly useful.
Apr 25 Cubism.js JavaScript SVG ★★★★★ A D3 plugin that supports horizon charts, one of my personal favorites for time series visualization.
Apr 16 Envision JavaScript HTML canvas ★★★★★ An extension of HumbleFinance (below) with extra features.
2011
Apr 9 Graphite Python Misc. ★★★★ A complete data collection and real time charting framework.
2010
Sep 20 webtreemap JavaScript HTML ★★★★★ Brilliant treemap code.
Aug 3 streamgraph.js JavaScript HTML canvas ★★★★ An elegant streamgraph implementation.
Mar 13 HumbleFinance JavaScript HTML canvas ★★★★ A very good reimplementation of the Google Finance charts.
2009
Nov 2 Protovis JavaScript SVG ★★★★★ Seems pretty damn good and provides an amazing array of output formats with a simple approach to coding.
Jun 6 Fun With Canvas: Create a jQuery Graph Plugin JavaScript HTML canvas ★★★★ Simple and effective
May 23 Axiis : Data Visualization Framework Flex library Flash ★★★★ Built atop Degrafa, adding a few layout primitives and other building blocks.
Degrafa : Declarative Graphics Framework Flex library Flash ★★★★ Seems very flexible and powerful.
Mar 03 RGraph JavaScript library HTML canvas ★★★★★ Pretty extensive, does interaction, Gantt charts, supports ASCII text rendering as well.
Jan 28 jsxgraph JavaScript library HTML canvas, SVG ★★★ Good for mathematical plotting.
2008
Dec 23 TimeSeriesGraph Source code Flash ★★★★ A clone of the Google Finance zoomable charts
Sep 17 Bluff: Beautiful graphs in JavaScript JavaScript library HTML canvas ★★★★ A port of the Gruff library for Ruby. Very small and lightweight, can pull data straight off HTML tables.
Previously Open Flash Chart Viewer and server-side libraries Flash ★★★★★ Pretty damn good, only thing I don’t like are the funky tooltips
Google Chart API Web Service PNG ★★★★ Lots of chart types, but URL API makes it a bit limited
Plotkit JavaScript library HTML canvas, SVG ★★★ Simple and to the point, hasn’t been updated since 2006
Flot jQuery extension HTML canvas ★★★★★ Amazingly powerful, supports interactive zooming of data
ExtFlot jQuery extension HTML canvas ★★★★★ Extended version using ExtJS
amCharts Viewer Flash ★★★★ Commercial (free with hard-coded link to home site)
XML/SWF Charts Viewer Flash ★★★ Commercial (free with hard-coded link to home site)
Pychart Python library PDF, PNG, SVG ★★★ Good for complex scientific plots. Not updated since 2006.
Chaco Python library Qt and GUI, primarily ★★★★★ Best suited for GUI apps
ZedGraph C# classes Multiple ★★★ Usable for server-side chart generation as well as GUI
Pybrary Plot C# Multiple ★★ Simple and straightforward
nplot C# Multiple ★★★ Primarily aimed at server-side plots
Gnuplot CLI tool Multiple ★★★★ The old favorite, great for scientific plotting but too complex for simple stuff
ploticus CLI tools Multiple ★★★★★ Great for very large datasets
RRDtool Standalone tool with multiple language bindings PNG ★★★★★ Excellent for system and network monitoring over large periods of time
GraphSketcher Desktop app PDF, JPEG, PNG ★★★★ Simple and to the point, great for off-the-cuff graphs

Graphs

Date Link Type Formats Rating Notes
2014
Sep 22 arbor.js JavaScript Canvas ★★★★ Very fast.
Jun 11 Cytoscape.js JavaScript Canvas ★★★★ With some interesting interactivity features.
Jun 10 JSNetworkX JavaScript SVG ★★★ A port of the Python networkx graph library.
May 30 GoJS JavaScript Multiple ★★★★ Commercial, but interesting.
Apr 16 vis.js JavaScript HTML canvas ★★★★ Can do timelines besides graphs.
2013
Sep 29 sigma.js JavaScript HTML canvas ★★★★★ A library for direct interaction with GEXF representations
2012
Nov 28 Gephi Java GL ★★★★ A very nice platform for interactive graphs
Jun 12 UbiGraph OpenGL N/A ★★★★★ An awesome client-server approach that can handle thousands of dynamic nodes and has a number of language bindings.
2011
Feb 10 canviz JavaScript library HTML canvas ★★★★★ A browser-side Graphviz implementation.
Previously Graphviz Desktop and CLI app Multiple ★★★★★ The quintessential graph rendering application, also available with a spiffy Mac OS X GUI
The JavaScript Canvas Hyperbolic Tree JavaScript library HTML canvas ★★★★ Very good interactive navigation
Moowheel JavaScript library HTML canvas ★★★★★ Not much interaction, but good visuals
Graph Gear Viewer Flash ★★★ A bit too funky for my taste – might be usable after a thorough visual review
jsViz JavaScript library HTML canvas, SVG, VML ★★★★★ Impressively fast
Hypergraph Java applet N/A ★★★ Slow and pokey

Scientific Visualization

Date Link Type Formats Rating Notes
2011
Jul 28 cinder C++ GL ★★★★★ Very high performance native code, with Mac/Xcode support.
Jul 13 d3.js JavaScript SVG ★★★★★ Allows for interesting interactivity.
Feb 23 philogl JavaScript GL ★★★★★ WebGL library – impressive.
Feb 20 ggplot2 R Multiple ★★★★ Very interesting, if niche.
2010
Earlier MayaVi Desktop app Multiple ★★★★★ Heavy-duty scientific visualization tool
matplotlib Python library Too many to list ★★★★★ Inspired by MATLAB. Good for publication quality output. Extremely sophisticated (and complex), looks better using this config file
SciGraphica Desktop app Multiple ★★★ Competent GTK app, hasn’t been updated since 2005
R Desktop app Multiple ★★★★ Focuses on statistical computing, graphics are a competent add-on.

Miscellaneous

Date Link Type Formats Rating Notes
2013
Feb 1 Timeline JS JavaScript N/A ★★★★★ A very nice, full-featured timeline solution.
dataset JavaScript N/A ★★★★ A library for manipulating datasets client-side (goes hand in hand with Storyboard, which is great for async processing.)
2012
Dec 1 d3-cloud JavaScript SVG ★★★ A D3-powered word cloud library that might come in handy.
2011
Older NodeBox Desktop app Multiple ★★★★★ Can be used to programmatically do just about anything, including graphs
Flare Multi-purpose library Flash ★★★★★ Can do several kinds of interactive data plots and directed/undirected graphs
Flow Map Java desktop tool Multiple ★★★ Unique, as far as I know

Geodata

Link Type Formats Rating Notes
gheat Tile server for integration with Google Maps HTML, PNG ★★★★ Requires Python 2.5, PIL and whatnot