Andy Trice recently forwarded me this link: http://selection.datavisualization.ch/#, a great site which showcases the current state of many visualization toolkits & frameworks. Upon investigation though, it looks like this is a mix of JavaScript & ActionScript libraries, applications for creation of data visualizations and generic helper tools. Navigating through the list seemed a tricky for the average developer. As well, there was a bunch of libraries I knew about that I didn’t see listed. It seemed to me like it would be useful to recreate this list based not on whether I’m trying to create a map or chart for example, but rather based on development restrictions. If you’re building an HTML/JS application, ActionScript libraries are not very helpful. Likewise, if you’re building a Flash application, a JavaScript toolkit may or may not be helpful.
The list will obviously change as new libaries are developed and old ones go by the wayside. I’m sure I’ve missed off a few as well and so I apologize in advance. Let me know and I’ll update as I can. I will try to keep this up to date, but you know how these things go…
Before we go into the list though, first, I highly recommend taking a look at Andy Trice’s post: Data Visualization with Web Standards
It’s a beautiful article describing how you can build compelling data visualizations using only HTML, CSS and JavaScript.
Libaries for JavaScript Development
- Arbor.js – (MIT license) Force-directed graph layout
- ArcGIS JavaScript API – High performance mapping/GIS applications
- amCharts – Charts, charts, charts
- Chroma.js – (GPL) Color conversions
- Cubism.js – (Apache) Time-series visualization, based on D3.js
- D3.js – (BSD) General visualization library
- Dance.js – (MIT) Visualization framework based on Backbone, Data.js & D3.js
- Data.js – (MIT) Not a visualization framework per se, but rather a data representation framework to facilitate visualization
- Envision.js – (MIT) Time series visualizations
- Google Chart Tools – (Google/Free) The name says it all – Charts
- Google Maps API – Google maps
- HightCharts – (Creative Commons & Commercial) Rich interactive charts
- InfoVis Toolkit – (MIT) Data visualization toolkit
- Kartograph – (AGPL) Render existing or custom Python-generated maps
- Kendo UI DataViz – (Commercial) Rich Cross-device data visualization
- Leaflet – (BSD) Lightweight map drawing libary
- MapQuest JavaScript API – MapQuest maps generation
- Miso Dataset – (MIT, GPL2) Libary for data transformation and management
- Modest Maps – (BSD) Tile-based maps
- Paper.js – (MIT) Vector graphics scripting
- Polymaps – (BSD) Tile-based maps
- Processing.js – (MIT) Drawing & data visualization library
- Protovis – (BSD) No longer under development – they recommend switching to D3.js
- Rafael – (MIT) Simplified vector graphics
- RGraph – (Free for non-commercial) Charts and custom widgets
- Rickshaw – (MIT) Interactive time series, based on D3.js
- Sencha Touch Charts – (Commercial) Rich interactive mobile-optimized charts
- Sigma.js – (MIT) Interactive & static graphs
- Tangle – (MIT) Build data reactive documents
- Timeline – (GPL) Timelines
Libraries for Flash Development
- amCharts – (Commercial) Flex & Flash charts & maps
- Axiis – (MIT) Flex-based data visualization framework
- Degrafa – (MIT) Declarative graphics framework, based on Flex 2/3
- Flare – (BSD) Data visualization library
- ILOG Elixir – (Commercial) Flex Data Visualization
- Kap Lab – (Commercial) Flex data visualization components
- Modest Maps – (BSD) Tile-based maps
- See my previous post on Flex mapping options for additional mapping options
Applications and Development Environments (Web & Desktop)
- ColorBrewer – Maps color scheme chooser
- Data Wrangler – Data cleaning & transformation
- GeoCommons – Tools & community to visualize GeoCommons datasets
- Gephi – Graph visualization platform
- Goolge Fusion Tables – Host, manage, collaborate on, visualize and publish data sets
- Google Refine – Data cleaning & transformation
- Impure/Quadrigram – Visual programming language for data visualization
- Many Eyes – Web application to publish & share data sets, create and share data visualizations
- MapBox – Full stack for creating, sharing & visualizing maps
- Mr. Data Converter – Web app that converts Excel data to web-friendly formats, including HTML, JSON & XML
- NodeBox – Generative art through procedural graphics
- Prefuse – Create rich data visualization with Java
- Processing – Programming language & environment for creating images, animations & interactions
- R – Software environment for statistical computing and graphical techniques
As far as Actionscript/Flex based data visualiazation frameworks – Axiis, Degrafa and Flare have not had any new development / updates in 2+ years and therefore appear to all be dead projects.
There are number of charting libraries available in market for creation of interactive charts like koolchart, Google free charts etc. These types of charting libraries are very useful to create dynamic charts.
Thanks