19 Critique

1,861 views

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,861
On SlideShare
0
From Embeds
0
Number of Embeds
9
Actions
Shares
0
Downloads
33
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

19 Critique

  1. 1. Stat405 Graphical theory & critique Hadley Wickham Monday, 2 November 2009
  2. 2. Exploratory graphics Are for you (not others). Need to be able to create rapidly because your first attempt will never be the most revealing. Iteration is crucial for developing the best display of your data. Gives rise to two key questions: Monday, 2 November 2009
  3. 3. What should I plot? How can I plot it? Monday, 2 November 2009
  4. 4. Two general tools Plot critique toolkit: “graphics are like pumpkin pie” Theory behind ggplot2: “A layered grammar of graphics” plus lots of practice... Monday, 2 November 2009
  5. 5. Graphics are like pumpkin pie The four C’s of critiquing a graphic Monday, 2 November 2009
  6. 6. Content Monday, 2 November 2009
  7. 7. Construction Monday, 2 November 2009
  8. 8. Context Monday, 2 November 2009
  9. 9. Consumption Monday, 2 November 2009
  10. 10. Content What data (variables) does the graph display? What non-data is present? What is pumpkin (essence of the graphic) vs what is spice (useful additional info)? Monday, 2 November 2009
  11. 11. Your turn Identify the data and non-data on “Napoleon's march” and “Building an electoral victory”. Which features are the most important? Which are just useful background information? Monday, 2 November 2009
  12. 12. Results Minard’s march: (top) latitude, longitude, number of troops, direction, branch, city name (bottom) latitude, temperature, date Building an electoral victory: state, number of electoral college votes, winner, margin of victory Monday, 2 November 2009
  13. 13. Construction How many layers are on the plot? What data does each layer display? What sort of geometric object does it use? Is it a summary of the raw data? How are variables mapped to aesthetics? Monday, 2 November 2009
  14. 14. Fo r i a r c bl va Perceptual mapping on e s t in on uo l y ! us Best 1. Position along a common scale 2. Position along nonaligned scale 3. Length 4. Angle/slope 5. Area 6. Volume Worst 7. Colour Monday, 2 November 2009
  15. 15. Your turn Answer the following questions for “Napoleon's march” and “Flight delays”: How many layers are on the plot? What data does the layer display? How does it display it? Monday, 2 November 2009
  16. 16. Results Napoleon’s march: (top) (1) path plot with width mapped to number of troops, colour to direction, separate group for each branch (2) labels giving city names (bottom) (1) line plot with longitude on x-axis and temperature on y-axis (2) text labels giving dates Flight delays: (1) white circles showing 100% cancellation, (2) outline of states, (3) points with size proportional to percent cancellations at each airport. Monday, 2 November 2009
  17. 17. Can the explain composition of a graphic in words, but how do we create it? Monday, 2 November 2009
  18. 18. “If any number of magnitudes are each the same multiple of the same number of other magnitudes, then the sum is that multiple of the sum.” Euclid, ~300 BC Monday, 2 November 2009
  19. 19. “If any number of magnitudes are each the same multiple of the same number of other magnitudes, then the sum is that multiple of the sum.” Euclid, ~300 BC m(Σx) = Σ(mx) Monday, 2 November 2009
  20. 20. The grammar of graphics An abstraction which makes thinking about, reasoning about and communicating graphics easier. Developed by Leland Wilkinson, particularly in “The Grammar of Graphics” 1999/2005 You’ve been using it in ggplot2 without knowing it! But to do more, you need to learn more about the theory. Monday, 2 November 2009
  21. 21. What is a layer? • Data • Mappings from variables to aesthetics (aes) • A geometric object (geom) • A statistical transformation (stat) • A position adjustment (position) Monday, 2 November 2009
  22. 22. layer(geom, stat, position, data, mapping, ...) layer( data = mpg, mapping = aes(x = displ, y = hwy), geom = "point", stat = "identity", position = "identity" ) layer( data = diamonds, mapping = aes(x = carat), geom = "bar", stat = "bin", position = "stack" ) Monday, 2 November 2009
  23. 23. # A lot of typing! layer( data = mpg, mapping = aes(x = displ, y = hwy), geom = "point", stat = "identity", position = "identity" ) # Every geom has an associated default statistic # (and vice versa), and position adjustment. geom_point(aes(displ, hwy), data = mpg) geom_histogram(aes(displ), data = mpg) Monday, 2 November 2009
  24. 24. # To actually create the plot ggplot() + geom_point(aes(displ, hwy), data = mpg) ggplot() + geom_histogram(aes(displ), data = mpg) Monday, 2 November 2009
  25. 25. # Multiple layers ggplot() + geom_point(aes(displ, hwy), data = mpg) + geom_smooth(aes(displ, hwy), data = mpg) # Avoid redundancy: ggplot(mpg, aes(displ, hwy)) + geom_point() + geom_smooth() Monday, 2 November 2009
  26. 26. # Different layers can have different aesthetics ggplot(mpg, aes(displ, hwy)) + geom_point(aes(colour = class)) + geom_smooth() ggplot(mpg, aes(displ, hwy)) + geom_point(aes(colour = class)) + geom_smooth(aes(group = class), method = "lm", se = F) Monday, 2 November 2009
  27. 27. Your turn For each of the following plots created with qplot, recreate the equivalent ggplot code. qplot(price, carat, data = diamonds) qplot(hwy, cty, data = mpg, geom = "jitter") qplot(reorder(class, hwy), hwy, data = mpg, geom = c("jitter", "boxplot")) qplot(log10(price), log10(carat), data = diamonds), colour = color) + geom_smooth(method = "lm") Monday, 2 November 2009
  28. 28. ggplot(diamonds, aes(price, data)) + geom_smooth() gglot(mpg, aes(hwy, cty)) + geom_jitter() ggplot(mpg, aes(reorder(class, hwy), hwy)) + geom_jitter() + geom_boxplot() ggplot(diamonds, aes(log10(price), log10(carat), colour = color)) + geom_point() + geom_smooth(method = "lm") Monday, 2 November 2009
  29. 29. More geoms & stats See http://had.co.nz/ggplot2 for complete list with helpful icons: Geoms: (0d) point, (1d) line, path, (2d) boxplot, bar, tile, text, polygon Stats: bin, summary, sum Monday, 2 November 2009
  30. 30. Your turn Go back to the descriptions of “Minard’s march” and “Flight delays” that you created before. Start converting your textual description in to working ggplot2 code. Use the data sets available on line to produce the graphics. Monday, 2 November 2009
  31. 31. Other features Scales. Used to override default perceptual mappings. Mainly useful for polishing plot for communication. Coordinate system. Rarely useful, but when needed are critical. Facetting. Have seen in use already. Only other feature of importance is interaction with scales. Themes: control presentation of non-data elements. Monday, 2 November 2009
  32. 32. Project 3 preview Choose your own dataset. Results will be presented as poster during a formal poster session in the last week of class. On November 16, Tracey Volz (a communications expert) will come and talk about how to create a good poster Monday, 2 November 2009
  33. 33. Data suggestions http://delicious.com/hadley/data http://github.com/hadley/data-housing- crisis Monday, 2 November 2009

×