39
Grammar of Graphics: Visualizing Data Leslie McIntosh Machine Learning & Data Science Meetup February 2013 – St. Louis, MO

Grammarof Graphics: VisualizingDatadataschemata.com/uploads/7/4/8/7/7487334/grammar_of_graphics.… · Graphics: VisualizingData Leslie McIntosh Machine Learning & Data Science Meetup

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Grammarof Graphics: VisualizingDatadataschemata.com/uploads/7/4/8/7/7487334/grammar_of_graphics.… · Graphics: VisualizingData Leslie McIntosh Machine Learning & Data Science Meetup

Grammar  of  Graphics:  

Visualizing  Data Leslie McIntosh

Machine Learning & Data Science Meetup February 2013 – St. Louis, MO

Page 2: Grammarof Graphics: VisualizingDatadataschemata.com/uploads/7/4/8/7/7487334/grammar_of_graphics.… · Graphics: VisualizingData Leslie McIntosh Machine Learning & Data Science Meetup

Overview •  Problem •  Grammar of Graphics – Leland Wilkenson

o  Syntax o  Semantics

•  Ggplot – Hadley Wickham •  Example - Leslie •  Example - Divya •  Q&A

Page 3: Grammarof Graphics: VisualizingDatadataschemata.com/uploads/7/4/8/7/7487334/grammar_of_graphics.… · Graphics: VisualizingData Leslie McIntosh Machine Learning & Data Science Meetup

Background  &  Perspective

Page 4: Grammarof Graphics: VisualizingDatadataschemata.com/uploads/7/4/8/7/7487334/grammar_of_graphics.… · Graphics: VisualizingData Leslie McIntosh Machine Learning & Data Science Meetup

How  do  you  obtain  data?

Page 5: Grammarof Graphics: VisualizingDatadataschemata.com/uploads/7/4/8/7/7487334/grammar_of_graphics.… · Graphics: VisualizingData Leslie McIntosh Machine Learning & Data Science Meetup

How  do  you  get  meaningful  information  

from  data?

Page 6: Grammarof Graphics: VisualizingDatadataschemata.com/uploads/7/4/8/7/7487334/grammar_of_graphics.… · Graphics: VisualizingData Leslie McIntosh Machine Learning & Data Science Meetup

Where  is  visualization  in  the  data  process  cycle?

Page 7: Grammarof Graphics: VisualizingDatadataschemata.com/uploads/7/4/8/7/7487334/grammar_of_graphics.… · Graphics: VisualizingData Leslie McIntosh Machine Learning & Data Science Meetup
Page 8: Grammarof Graphics: VisualizingDatadataschemata.com/uploads/7/4/8/7/7487334/grammar_of_graphics.… · Graphics: VisualizingData Leslie McIntosh Machine Learning & Data Science Meetup
Page 9: Grammarof Graphics: VisualizingDatadataschemata.com/uploads/7/4/8/7/7487334/grammar_of_graphics.… · Graphics: VisualizingData Leslie McIntosh Machine Learning & Data Science Meetup

What  is  a  statistical  graphic?

Leland Wilkinson: The Grammar of Graphics 2nd Edition

Page 10: Grammarof Graphics: VisualizingDatadataschemata.com/uploads/7/4/8/7/7487334/grammar_of_graphics.… · Graphics: VisualizingData Leslie McIntosh Machine Learning & Data Science Meetup

Premises •  Pipeline does not mandate implementation of

system

•  Cannot change the order of the pipeline

Page 11: Grammarof Graphics: VisualizingDatadataschemata.com/uploads/7/4/8/7/7487334/grammar_of_graphics.… · Graphics: VisualizingData Leslie McIntosh Machine Learning & Data Science Meetup

Syntax

Page 12: Grammarof Graphics: VisualizingDatadataschemata.com/uploads/7/4/8/7/7487334/grammar_of_graphics.… · Graphics: VisualizingData Leslie McIntosh Machine Learning & Data Science Meetup

Step  1:    Extract  data  from  source  

to  create  variables

Variables

Page 13: Grammarof Graphics: VisualizingDatadataschemata.com/uploads/7/4/8/7/7487334/grammar_of_graphics.… · Graphics: VisualizingData Leslie McIntosh Machine Learning & Data Science Meetup

Step  2:    Apply  algebra  to  varset

Algebra

Page 14: Grammarof Graphics: VisualizingDatadataschemata.com/uploads/7/4/8/7/7487334/grammar_of_graphics.… · Graphics: VisualizingData Leslie McIntosh Machine Learning & Data Science Meetup

Step  3:    Apply  scales  to  varset

Scales

Page 15: Grammarof Graphics: VisualizingDatadataschemata.com/uploads/7/4/8/7/7487334/grammar_of_graphics.… · Graphics: VisualizingData Leslie McIntosh Machine Learning & Data Science Meetup

Step  4:    Compute  statistics    

on  varset

Statistics

Page 16: Grammarof Graphics: VisualizingDatadataschemata.com/uploads/7/4/8/7/7487334/grammar_of_graphics.… · Graphics: VisualizingData Leslie McIntosh Machine Learning & Data Science Meetup

Step  5:    Construct  geometry  to  

produce  graph

Geometry

Page 17: Grammarof Graphics: VisualizingDatadataschemata.com/uploads/7/4/8/7/7487334/grammar_of_graphics.… · Graphics: VisualizingData Leslie McIntosh Machine Learning & Data Science Meetup

Step  6:    Apply  coordinates  to  graph

Coordinates

Page 18: Grammarof Graphics: VisualizingDatadataschemata.com/uploads/7/4/8/7/7487334/grammar_of_graphics.… · Graphics: VisualizingData Leslie McIntosh Machine Learning & Data Science Meetup

Step  7:    Compute  aesthetics  to  

create  graphic

Aesthetics

Page 19: Grammarof Graphics: VisualizingDatadataschemata.com/uploads/7/4/8/7/7487334/grammar_of_graphics.… · Graphics: VisualizingData Leslie McIntosh Machine Learning & Data Science Meetup

Aesthetic  AQributes Form Surface Motion Sound Text Position Size Shape   •  Polygon •  Glyph •  Image Rotation Resolution  

Color •  Hue •  Brightness •  Saturation Texture •  PaQern •  Granularity •  Orientation Blur Transparency

Direction Speed Acceleration

Tone Volume Rhythm Voice

Label

Page 20: Grammarof Graphics: VisualizingDatadataschemata.com/uploads/7/4/8/7/7487334/grammar_of_graphics.… · Graphics: VisualizingData Leslie McIntosh Machine Learning & Data Science Meetup

Semantics

Page 21: Grammarof Graphics: VisualizingDatadataschemata.com/uploads/7/4/8/7/7487334/grammar_of_graphics.… · Graphics: VisualizingData Leslie McIntosh Machine Learning & Data Science Meetup

Space •  Two spaces to make a graphic

o  The underlying space o  Display space

Page 22: Grammarof Graphics: VisualizingDatadataschemata.com/uploads/7/4/8/7/7487334/grammar_of_graphics.… · Graphics: VisualizingData Leslie McIntosh Machine Learning & Data Science Meetup

Time •  Time is ordered •  Time is continuous •  Time zones are discrete •  Time intervals are additive •  Time is cyclical •  Time is independent of location (perceived)

Page 23: Grammarof Graphics: VisualizingDatadataschemata.com/uploads/7/4/8/7/7487334/grammar_of_graphics.… · Graphics: VisualizingData Leslie McIntosh Machine Learning & Data Science Meetup

Uncertainty •  Variability •  Noise •  Incompleteness •  Indeterminacy •  Bias •  Error •  Accuracy •  Precision •  Reliability •  Validity •  Quality •  Integrity

Graphic: Hadley Wickham docs.ggplot2.org

Page 24: Grammarof Graphics: VisualizingDatadataschemata.com/uploads/7/4/8/7/7487334/grammar_of_graphics.… · Graphics: VisualizingData Leslie McIntosh Machine Learning & Data Science Meetup

Analysis

!

Graphic: Leslie McIntosh

Page 25: Grammarof Graphics: VisualizingDatadataschemata.com/uploads/7/4/8/7/7487334/grammar_of_graphics.… · Graphics: VisualizingData Leslie McIntosh Machine Learning & Data Science Meetup

Control  &  Automation •  Divya’s example

Page 26: Grammarof Graphics: VisualizingDatadataschemata.com/uploads/7/4/8/7/7487334/grammar_of_graphics.… · Graphics: VisualizingData Leslie McIntosh Machine Learning & Data Science Meetup

Tools  of  Data  Visualization

•  R o  ggplot2 - Hadley Wickham o  Shiny

•  SPSS o  Leland Wilkinson et al

•  SAS •  D3 •  GGobi

Page 27: Grammarof Graphics: VisualizingDatadataschemata.com/uploads/7/4/8/7/7487334/grammar_of_graphics.… · Graphics: VisualizingData Leslie McIntosh Machine Learning & Data Science Meetup

ggplot2  Properties •  Data •  Scales •  Stats •  Geoms •  Coordinates •  Faceting •  Themes

Page 28: Grammarof Graphics: VisualizingDatadataschemata.com/uploads/7/4/8/7/7487334/grammar_of_graphics.… · Graphics: VisualizingData Leslie McIntosh Machine Learning & Data Science Meetup

Scaling •  Controls the mapping between data and

aesthetics •  Can be mapped to a variable or be constant •  Examples

o  Legend o  Colour-gradient o  Shape

Page 29: Grammarof Graphics: VisualizingDatadataschemata.com/uploads/7/4/8/7/7487334/grammar_of_graphics.… · Graphics: VisualizingData Leslie McIntosh Machine Learning & Data Science Meetup

Geoms •  Determine the type of plot •  Examples

o  Area o  Bars o  Boxplot o  Histogram o  Raster o  Ribbon

Page 30: Grammarof Graphics: VisualizingDatadataschemata.com/uploads/7/4/8/7/7487334/grammar_of_graphics.… · Graphics: VisualizingData Leslie McIntosh Machine Learning & Data Science Meetup

Aesthetics •  Can be mapped to a variable or be constant

Page 31: Grammarof Graphics: VisualizingDatadataschemata.com/uploads/7/4/8/7/7487334/grammar_of_graphics.… · Graphics: VisualizingData Leslie McIntosh Machine Learning & Data Science Meetup

Examples

Page 32: Grammarof Graphics: VisualizingDatadataschemata.com/uploads/7/4/8/7/7487334/grammar_of_graphics.… · Graphics: VisualizingData Leslie McIntosh Machine Learning & Data Science Meetup

Grammar  of  Graphics  and  ggplot  describe  rules  and  give  a  tool,  

but  not  how  to  decide  to  properly  represent  data  

Page 33: Grammarof Graphics: VisualizingDatadataschemata.com/uploads/7/4/8/7/7487334/grammar_of_graphics.… · Graphics: VisualizingData Leslie McIntosh Machine Learning & Data Science Meetup

 Perinatal/Infant  Mortality  Rates  of  Delayed-­‐‑Delivered  Second  Twin    

0%

20%

40%

60%

80%

Gestational Age (Weeks)

Delay 61% 37% 18% 7%

No Delay 74% 37% 9% 4%

18-23 24-26 27-29 30+

Page 34: Grammarof Graphics: VisualizingDatadataschemata.com/uploads/7/4/8/7/7487334/grammar_of_graphics.… · Graphics: VisualizingData Leslie McIntosh Machine Learning & Data Science Meetup

It  is  easy  to  deceive  with  poor  visualizations,  it  is  more  difficult  to  portray  the  truth  without  them.  

Page 35: Grammarof Graphics: VisualizingDatadataschemata.com/uploads/7/4/8/7/7487334/grammar_of_graphics.… · Graphics: VisualizingData Leslie McIntosh Machine Learning & Data Science Meetup

Incremental  changes  in  aesthetics  should  reflect  and  be  perceived  as  proportional  and/or  

meaningful  changes  in  data

Page 36: Grammarof Graphics: VisualizingDatadataschemata.com/uploads/7/4/8/7/7487334/grammar_of_graphics.… · Graphics: VisualizingData Leslie McIntosh Machine Learning & Data Science Meetup

Example

Page 37: Grammarof Graphics: VisualizingDatadataschemata.com/uploads/7/4/8/7/7487334/grammar_of_graphics.… · Graphics: VisualizingData Leslie McIntosh Machine Learning & Data Science Meetup

Communication  Network

Page 38: Grammarof Graphics: VisualizingDatadataschemata.com/uploads/7/4/8/7/7487334/grammar_of_graphics.… · Graphics: VisualizingData Leslie McIntosh Machine Learning & Data Science Meetup

Insurance  Map

Page 39: Grammarof Graphics: VisualizingDatadataschemata.com/uploads/7/4/8/7/7487334/grammar_of_graphics.… · Graphics: VisualizingData Leslie McIntosh Machine Learning & Data Science Meetup

Final  Comments