SlideShare a Scribd company logo
Amit Kapoor
@amitkaps
Data
Visual
Story
*
Tools &
Resources
for Data
Visualisation
Tools Landscape
Abstract
Flexible
Difficult
Slow
Code
Expressive
Blackbox
Limited
Simple
Quick
GUI
Efficient
Tools Landscape
Abstract, Flexible, Difficult
Slow, Code, Expressive
Blackbox, Limited, Simple
Quick, GUI, Efficient
Tools Landscape
Abstract, Flexible, Difficult
Slow, Code, Expressive
Blackbox, Limited, Simple
Quick, GUI, Efficient
Canvas
Paint directly on a
pixel grid. Design &
manage every
element of chart
Processing
Nodebox
sketchpad
Raphael.js
Paper.js
Processing.js
Processing - Pie Chart
size(400, 400);
background(255);
smooth();
noStroke();
int diameter = 200;
float[] data = {5, 25, 15, 20, 10};
int[] sat = {25, 75, 125, 175, 225};
float lastAngle = 0, sum = 0;
for (int i = 0; i < data.length; i++)
sum += data[i];
for (int i = 0; i < data.length; i++) {
fill(sat[i]);
float angle = data[i] / sum * 2 * PI;
arc(width / 2, height / 2, diameter,
diameter,
lastAngle, lastAngle + angle);
lastAngle += angle;
}
Source: Processing
Tools Landscape
Abstract, Flexible, Difficult
Slow, Code, Expressive
Blackbox, Limited, Simple
Quick, GUI, Efficient
Canvas Charting
Collection of fixed
charts that require
data to be shaped
in a particular way
Excel
Mondrian
Many Eyes
Google Charts
HighCharts
Fusion Charts
Paint directly on a
pixel grid. Design &
manage every
element of chart
Processing
Nodebox
sketchpad
Raphael.js
Paper.js
Processing.js
Excel - Chart Typology
Excel - Column, Bar
Excel - Pie, Line, Area
Excel - Scatter, Others
Excel - Types, Others
Excel - Trees, Streams
Source: Microsoft Research
Many Eyes
Source: IBM- Many Eyes
Google Charts - Pie
Source: Google Charts Playground
function drawVisualization() {
// Create and populate the data table.
var data = google.visualization.
arrayToDataTable([
['Areas', 'Sales'],
['North', 5],
['East', 25],
['West', 15],
['South', 20],
['Central', 10]
]);
// Create and draw the visualization.
new google.visualization.PieChart
(document.getElementById
('visualization')).
draw(data, {title:"Sales by
Area"});
}
Google Charts
Source: Google Charts
Google Charts
Source: Google Charts
HighCharts
Source: HighCharts
Tools Landscape
Abstract, Flexible, Difficult
Slow, Code, Expressive
Blackbox, Limited, Simple
Quick, GUI, Efficient
Canvas Charting
Collection of fixed
charts that require
data to be shaped
in a particular way
Excel
Mondrian
Many Eyes
Google Charts
HighCharts
Fusion Charts
Paint directly on a
pixel grid. Design &
manage every
element of chart
Processing
Nodebox
sketchpad
Raphael.js
Paper.js
Processing.js
Visual
Visual analysis
languages allowing
flexibility to design
many variants
Tableau
Gephi
raw
Vega
Tableau - VizQL
Source: Tableau Software Public
Gephi - Graph Viz
Source: Gephi
Raw
Source: Raw
Vega
Source: Vega Visualization
Tools Landscape
Abstract, Flexible, Difficult
Slow, Code, Expressive
Blackbox, Limited, Simple
Quick, GUI, Efficient
Canvas Grammar Charting
Collection of fixed
charts that require
data to be shaped
in a particular way
Excel
Mondrian
Many Eyes
Google Charts
HighCharts
Fusion Charts
Collection of
graphical primitives
for composing data
driven graphics
R-ggplot2
SPSS
plot.ly
d3.js
Bokeh
Paint directly on a
pixel grid. Design &
manage every
element of chart
Processing
Nodebox
sketchpad
Raphael.js
Paper.js
Processing.js
Visual
Visual analysis
languages allowing
flexibility to design
many variants
Tableau
Gephi
raw
Vega
R - ggplot2
Source: ggplot2
areas <- c("North", "East", "West",
"South", "Central")
sales <- c(5, 25, 15, 20, 10)
humble <- data.frame(areas, sales)
ggplot(humble, aes(x = "",
fill = areas,
weight = sales)) +
geom_bar(width = 1) +
coord_polar("y")
d3.js
Source: Data-Driven Documents
var data = [5, 25, 15, 20, 10];
var color = d3.scale.category20();
var svg = d3.select("body").append("svg")
.attr("width", 150)
.attr("height", 150);
var g = svg.append("g")
.attr("transform", "translate(75,
75)");
var arcs = g.selectAll("path")
.data(d3.layout.pie().sort(null)
(data)) .enter().append("path")
.style("fill", function(d,i) {
return color(i); })
.attr("d",d3.svg.arc()
.innerRadius(0)
.outerRadius(70));
Tools Landscape
Abstract, Flexible, Difficult
Slow, Code, Expressive
Blackbox, Limited, Simple
Quick, GUI, Efficient
Canvas Grammar Charting
Collection of fixed
charts that require
data to be shaped
in a particular way
Excel
Mondrian
Many Eyes
Google Charts
HighCharts
Fusion Charts
Collection of
graphical primitives
for composing data
driven graphics
R-ggplot2
SPSS
plot.ly
d3.js
Bokeh
Paint directly on a
pixel grid. Design &
manage every
element of chart
Processing
Nodebox
sketchpad
Raphael.js
Paper.js
Processing.js
Visual
Visual analysis
languages allowing
flexibility to design
many variants
Tableau
Gephi
raw
Vega
Foundational
Semiology of
Graphics
Jacques
Bertin
Theory
Exploratory
Data Analysis
John
Tukey
EDA
The Visual
Display of
Quantitative
Information
Edward
Tufte
Excellence
The Elements
of Graphing
Data
William
Cleveland
Methods
The Grammar
of Graphics
Leland
Wilkinson
Grammar
Fundamentals
Show Me the
Numbers
Stephen
Few
Basic Graphs
Now you
see it
Stephen
Few
Exploratory
Information
Dashboard
Design
Stephen
Few
Dashboard
Envisioning
Information
Edward
Tufte
Methods
Visualising
Data
William
Cleveland
Methods
Think, Perception, Design
Unfolding the
Napkin / The
Back of the
Napkin
Dan
Roam
Thinking
The Non-
Designer’s
Design Book
Robin
Williams
Graphic
Design
The Design of
Everyday
Things
Donald
Norman
Human Object
Interaction
Information
Visualization:
Perception for
Design
Colin
Ware
Perception
Visual
Thinking for
Design
Colin
Ware
Visual
Cognition
Process & Tools
Data
Visualization: A
Successful
Design Process
Andy
Kirk
Approach
Visualizing
Data
Ben
Fry
Processing /
Approach
Interactive Data
Visualization
Scott
Murray
D3.js
ggplot2:
Elegant
Graphics for
Data Analysis
Hadley
Wickam
R: ggplot2
Data
Journalism
Handbook
Open
Knowledge
Data
Journalism
Storytelling
Resonate
Nancy Duarte
Stories
Slidedocs
Nancy
Duarte
Slides +
Documents
Making
Comics
Scott
McCloud
Images +
Words
Improving
your
Storytelling
Doug Lipman
Oral
Storytelling
The Story
Factor
Annette
Simmons
Business
Storytelling
Blogs and Links
● Guardian Data Blog
● New York Times
● Excel Charts
● Visualising Data
● Fell in Love with Data
● Flowing Data
● datavisualization.ch
● Eager eyes
● Junk Charts
● Information Aesthetics
● HBR - Persuading with Data
A collection of blogs by Flowing Data
Courses
● Jeffrey Heer - CSE512 Data Visualization
● Tamara Munzer - CS533-09 Information Visualization
● Udacity - Intro to Data Science
● Udacity - Exploratory Data Analysis
Amit Kapoor
@amitkaps
amitkaps.com
narrativeviz.com
Data
Visual
Story
*

More Related Content

PDF
Visualising Multi Dimensional Data
PDF
Visualising Big Data
PDF
Genome Browser based on Google Maps API
PPTX
Introducing the Microsoft Virtual Earth Silverlight Map Control CTP
PDF
Presentation: Plotting Systems in R
PDF
Data visualization with multiple groups using ggplot2
PDF
Geo Spatial Plot using R
PPT
CS 354 Transformation, Clipping, and Culling
Visualising Multi Dimensional Data
Visualising Big Data
Genome Browser based on Google Maps API
Introducing the Microsoft Virtual Earth Silverlight Map Control CTP
Presentation: Plotting Systems in R
Data visualization with multiple groups using ggplot2
Geo Spatial Plot using R
CS 354 Transformation, Clipping, and Culling

What's hot (20)

DOCX
Computer graphics
PPTX
Introduction to graphics programming in c
PDF
Real life XNA
PPTX
12. Map | WeakMap | ES6 | JavaScript | Typescript
PDF
Data visualization using the grammar of graphics
PDF
C Graphics Functions
PPTX
Texture mapping in_opengl
DOCX
R-ggplot2 package Examples
DOCX
Surface3d in R and rgl package.
PDF
Cg lab cse-v (1) (1)
PDF
Intro to ggplot2 - Sheffield R Users Group, Feb 2015
PPT
Lecture on graphics
PDF
Master defence 2020 - Vadym Korshunov - Region-Selected Image Generation with...
PDF
peRm R group. Review of packages for r for market data downloading and analysis
PDF
LSGAN - SIMPle(Simple Idea Meaningful Performance Level up)
PDF
Graph convolutional networks in apache spark
PDF
Fun with D3.js: Data Visualization Eye Candy with Streaming JSON
PDF
Computer graphics practical(jainam)
PDF
Computer Graphics Programes
Computer graphics
Introduction to graphics programming in c
Real life XNA
12. Map | WeakMap | ES6 | JavaScript | Typescript
Data visualization using the grammar of graphics
C Graphics Functions
Texture mapping in_opengl
R-ggplot2 package Examples
Surface3d in R and rgl package.
Cg lab cse-v (1) (1)
Intro to ggplot2 - Sheffield R Users Group, Feb 2015
Lecture on graphics
Master defence 2020 - Vadym Korshunov - Region-Selected Image Generation with...
peRm R group. Review of packages for r for market data downloading and analysis
LSGAN - SIMPle(Simple Idea Meaningful Performance Level up)
Graph convolutional networks in apache spark
Fun with D3.js: Data Visualization Eye Candy with Streaming JSON
Computer graphics practical(jainam)
Computer Graphics Programes
Ad

Similar to Tools & Resources for Data Visualisation (20)

PDF
Structuring Spark: DataFrames, Datasets, and Streaming by Michael Armbrust
PDF
Structuring Spark: DataFrames, Datasets, and Streaming
PDF
Structuring Apache Spark 2.0: SQL, DataFrames, Datasets And Streaming - by Mi...
PPTX
MADlib Architecture and Functional Demo on How to Use MADlib/PivotalR
PDF
Visualization of Big Data in Web Apps
PDF
EnrichmentWeek Binus Computer Vision
PDF
Scalding big ADta
PDF
Architecture for scalable Angular applications
PDF
State of the Art Web Mapping with Open Source
PDF
[1D6]RE-view of Android L developer PRE-view
PDF
a data driven game object system
PDF
Seeing Like Software
PDF
Graph computation
PDF
R programmingmilano
PDF
Introduction to spark
PDF
RDataMining slides-r-programming
PDF
Rethinking metrics: metrics 2.0 @ Lisa 2014
PDF
Scaling Up: How Switching to Apache Spark Improved Performance, Realizability...
PDF
Scaling up data science applications
PPT
python_bASICSPPTvISHWASpython_bASICS.ppt
Structuring Spark: DataFrames, Datasets, and Streaming by Michael Armbrust
Structuring Spark: DataFrames, Datasets, and Streaming
Structuring Apache Spark 2.0: SQL, DataFrames, Datasets And Streaming - by Mi...
MADlib Architecture and Functional Demo on How to Use MADlib/PivotalR
Visualization of Big Data in Web Apps
EnrichmentWeek Binus Computer Vision
Scalding big ADta
Architecture for scalable Angular applications
State of the Art Web Mapping with Open Source
[1D6]RE-view of Android L developer PRE-view
a data driven game object system
Seeing Like Software
Graph computation
R programmingmilano
Introduction to spark
RDataMining slides-r-programming
Rethinking metrics: metrics 2.0 @ Lisa 2014
Scaling Up: How Switching to Apache Spark Improved Performance, Realizability...
Scaling up data science applications
python_bASICSPPTvISHWASpython_bASICS.ppt
Ad

More from Amit Kapoor (18)

PDF
Python Visualisation for Data Science
PDF
Deep Learning for NLP
PDF
The Power of Ensembles in Machine Learning
PDF
Model Visualisation
PDF
Storytelling with Data - Approach | Skills
PDF
Learning the Craft of Data Visualisation
PDF
Fifth Elephant 2014 talk - Crafting Visual Stories with Data
PDF
Storytelling with Data - See | Show | Tell | Engage
PDF
Crafting Visual Stories with Data
PDF
Business Process Improvement - A Strategic and Supply Chain Perspective
PDF
What makes a data-story work?
PDF
What is Strategy - Thinking like a Strategist
PPTX
Telling Stories with Data - Using Story Spine
PPTX
Story Structure and Modern Storytelling
PPTX
Targeting the Moment of Truth - Using Big Data in Retail
PDF
Storytelling - Gutenberg
PDF
Analytics in Consulting
PPT
Retail Pricing Perspective
Python Visualisation for Data Science
Deep Learning for NLP
The Power of Ensembles in Machine Learning
Model Visualisation
Storytelling with Data - Approach | Skills
Learning the Craft of Data Visualisation
Fifth Elephant 2014 talk - Crafting Visual Stories with Data
Storytelling with Data - See | Show | Tell | Engage
Crafting Visual Stories with Data
Business Process Improvement - A Strategic and Supply Chain Perspective
What makes a data-story work?
What is Strategy - Thinking like a Strategist
Telling Stories with Data - Using Story Spine
Story Structure and Modern Storytelling
Targeting the Moment of Truth - Using Big Data in Retail
Storytelling - Gutenberg
Analytics in Consulting
Retail Pricing Perspective

Recently uploaded (20)

PDF
BF and FI - Blockchain, fintech and Financial Innovation Lesson 2.pdf
PPTX
The THESIS FINAL-DEFENSE-PRESENTATION.pptx
PPTX
Measurement of Afordability for Water Supply and Sanitation in Bangladesh .pptx
PPTX
Business Ppt On Nestle.pptx huunnnhhgfvu
PPT
Chapter 3 METAL JOINING.pptnnnnnnnnnnnnn
PPTX
climate analysis of Dhaka ,Banglades.pptx
PPTX
Understanding Prototyping in Design and Development
PDF
Data Analyst Certificate Programs for Beginners | IABAC
PPTX
Logistic Regression ml machine learning.pptx
PDF
Clinical guidelines as a resource for EBP(1).pdf
PPTX
Introduction to Basics of Ethical Hacking and Penetration Testing -Unit No. 1...
PPTX
Data-Driven-Credit-Card-Launch-A-Wells-Fargo-Case-Study.pptx
PDF
Launch Your Data Science Career in Kochi – 2025
PDF
22.Patil - Early prediction of Alzheimer’s disease using convolutional neural...
PPTX
ALIMENTARY AND BILIARY CONDITIONS 3-1.pptx
PPT
Quality review (1)_presentation of this 21
PPTX
1_Introduction to advance data techniques.pptx
PDF
Report The-State-of-AIOps 20232032 3.pdf
PPTX
Global journeys: estimating international migration
PPTX
batch data Retailer Data management Project.pptx
BF and FI - Blockchain, fintech and Financial Innovation Lesson 2.pdf
The THESIS FINAL-DEFENSE-PRESENTATION.pptx
Measurement of Afordability for Water Supply and Sanitation in Bangladesh .pptx
Business Ppt On Nestle.pptx huunnnhhgfvu
Chapter 3 METAL JOINING.pptnnnnnnnnnnnnn
climate analysis of Dhaka ,Banglades.pptx
Understanding Prototyping in Design and Development
Data Analyst Certificate Programs for Beginners | IABAC
Logistic Regression ml machine learning.pptx
Clinical guidelines as a resource for EBP(1).pdf
Introduction to Basics of Ethical Hacking and Penetration Testing -Unit No. 1...
Data-Driven-Credit-Card-Launch-A-Wells-Fargo-Case-Study.pptx
Launch Your Data Science Career in Kochi – 2025
22.Patil - Early prediction of Alzheimer’s disease using convolutional neural...
ALIMENTARY AND BILIARY CONDITIONS 3-1.pptx
Quality review (1)_presentation of this 21
1_Introduction to advance data techniques.pptx
Report The-State-of-AIOps 20232032 3.pdf
Global journeys: estimating international migration
batch data Retailer Data management Project.pptx

Tools & Resources for Data Visualisation

  • 3. Tools Landscape Abstract, Flexible, Difficult Slow, Code, Expressive Blackbox, Limited, Simple Quick, GUI, Efficient
  • 4. Tools Landscape Abstract, Flexible, Difficult Slow, Code, Expressive Blackbox, Limited, Simple Quick, GUI, Efficient Canvas Paint directly on a pixel grid. Design & manage every element of chart Processing Nodebox sketchpad Raphael.js Paper.js Processing.js
  • 5. Processing - Pie Chart size(400, 400); background(255); smooth(); noStroke(); int diameter = 200; float[] data = {5, 25, 15, 20, 10}; int[] sat = {25, 75, 125, 175, 225}; float lastAngle = 0, sum = 0; for (int i = 0; i < data.length; i++) sum += data[i]; for (int i = 0; i < data.length; i++) { fill(sat[i]); float angle = data[i] / sum * 2 * PI; arc(width / 2, height / 2, diameter, diameter, lastAngle, lastAngle + angle); lastAngle += angle; } Source: Processing
  • 6. Tools Landscape Abstract, Flexible, Difficult Slow, Code, Expressive Blackbox, Limited, Simple Quick, GUI, Efficient Canvas Charting Collection of fixed charts that require data to be shaped in a particular way Excel Mondrian Many Eyes Google Charts HighCharts Fusion Charts Paint directly on a pixel grid. Design & manage every element of chart Processing Nodebox sketchpad Raphael.js Paper.js Processing.js
  • 7. Excel - Chart Typology
  • 9. Excel - Pie, Line, Area
  • 11. Excel - Types, Others
  • 12. Excel - Trees, Streams Source: Microsoft Research
  • 14. Google Charts - Pie Source: Google Charts Playground function drawVisualization() { // Create and populate the data table. var data = google.visualization. arrayToDataTable([ ['Areas', 'Sales'], ['North', 5], ['East', 25], ['West', 15], ['South', 20], ['Central', 10] ]); // Create and draw the visualization. new google.visualization.PieChart (document.getElementById ('visualization')). draw(data, {title:"Sales by Area"}); }
  • 18. Tools Landscape Abstract, Flexible, Difficult Slow, Code, Expressive Blackbox, Limited, Simple Quick, GUI, Efficient Canvas Charting Collection of fixed charts that require data to be shaped in a particular way Excel Mondrian Many Eyes Google Charts HighCharts Fusion Charts Paint directly on a pixel grid. Design & manage every element of chart Processing Nodebox sketchpad Raphael.js Paper.js Processing.js Visual Visual analysis languages allowing flexibility to design many variants Tableau Gephi raw Vega
  • 19. Tableau - VizQL Source: Tableau Software Public
  • 20. Gephi - Graph Viz Source: Gephi
  • 23. Tools Landscape Abstract, Flexible, Difficult Slow, Code, Expressive Blackbox, Limited, Simple Quick, GUI, Efficient Canvas Grammar Charting Collection of fixed charts that require data to be shaped in a particular way Excel Mondrian Many Eyes Google Charts HighCharts Fusion Charts Collection of graphical primitives for composing data driven graphics R-ggplot2 SPSS plot.ly d3.js Bokeh Paint directly on a pixel grid. Design & manage every element of chart Processing Nodebox sketchpad Raphael.js Paper.js Processing.js Visual Visual analysis languages allowing flexibility to design many variants Tableau Gephi raw Vega
  • 24. R - ggplot2 Source: ggplot2 areas <- c("North", "East", "West", "South", "Central") sales <- c(5, 25, 15, 20, 10) humble <- data.frame(areas, sales) ggplot(humble, aes(x = "", fill = areas, weight = sales)) + geom_bar(width = 1) + coord_polar("y")
  • 25. d3.js Source: Data-Driven Documents var data = [5, 25, 15, 20, 10]; var color = d3.scale.category20(); var svg = d3.select("body").append("svg") .attr("width", 150) .attr("height", 150); var g = svg.append("g") .attr("transform", "translate(75, 75)"); var arcs = g.selectAll("path") .data(d3.layout.pie().sort(null) (data)) .enter().append("path") .style("fill", function(d,i) { return color(i); }) .attr("d",d3.svg.arc() .innerRadius(0) .outerRadius(70));
  • 26. Tools Landscape Abstract, Flexible, Difficult Slow, Code, Expressive Blackbox, Limited, Simple Quick, GUI, Efficient Canvas Grammar Charting Collection of fixed charts that require data to be shaped in a particular way Excel Mondrian Many Eyes Google Charts HighCharts Fusion Charts Collection of graphical primitives for composing data driven graphics R-ggplot2 SPSS plot.ly d3.js Bokeh Paint directly on a pixel grid. Design & manage every element of chart Processing Nodebox sketchpad Raphael.js Paper.js Processing.js Visual Visual analysis languages allowing flexibility to design many variants Tableau Gephi raw Vega
  • 27. Foundational Semiology of Graphics Jacques Bertin Theory Exploratory Data Analysis John Tukey EDA The Visual Display of Quantitative Information Edward Tufte Excellence The Elements of Graphing Data William Cleveland Methods The Grammar of Graphics Leland Wilkinson Grammar
  • 28. Fundamentals Show Me the Numbers Stephen Few Basic Graphs Now you see it Stephen Few Exploratory Information Dashboard Design Stephen Few Dashboard Envisioning Information Edward Tufte Methods Visualising Data William Cleveland Methods
  • 29. Think, Perception, Design Unfolding the Napkin / The Back of the Napkin Dan Roam Thinking The Non- Designer’s Design Book Robin Williams Graphic Design The Design of Everyday Things Donald Norman Human Object Interaction Information Visualization: Perception for Design Colin Ware Perception Visual Thinking for Design Colin Ware Visual Cognition
  • 30. Process & Tools Data Visualization: A Successful Design Process Andy Kirk Approach Visualizing Data Ben Fry Processing / Approach Interactive Data Visualization Scott Murray D3.js ggplot2: Elegant Graphics for Data Analysis Hadley Wickam R: ggplot2 Data Journalism Handbook Open Knowledge Data Journalism
  • 31. Storytelling Resonate Nancy Duarte Stories Slidedocs Nancy Duarte Slides + Documents Making Comics Scott McCloud Images + Words Improving your Storytelling Doug Lipman Oral Storytelling The Story Factor Annette Simmons Business Storytelling
  • 32. Blogs and Links ● Guardian Data Blog ● New York Times ● Excel Charts ● Visualising Data ● Fell in Love with Data ● Flowing Data ● datavisualization.ch ● Eager eyes ● Junk Charts ● Information Aesthetics ● HBR - Persuading with Data A collection of blogs by Flowing Data
  • 33. Courses ● Jeffrey Heer - CSE512 Data Visualization ● Tamara Munzer - CS533-09 Information Visualization ● Udacity - Intro to Data Science ● Udacity - Exploratory Data Analysis