index.md

DSCI 531: Data Visualization I

The design and implementation of static figures across all phases of data analysis, from ingest and cleaning to description and inference. How to make principled and effective choices with respect to marks, spatial arrangement, and colour.

Time: 11:10am-12:30pm Wed/Mon, Nov 16-Dec 12 2016
Labs: Thursday afternoons 2-4pm, ESB 1042
Quizzes: Thu Dec 1 2-2:30pm, Thu Dec 15 2-2:30pm
Location: SPPH 143
Slack channel: https://ubc-mds.slack.com/messages/531_viz-1
Instructor: Tamara Munzner @munzner
Teaching fellow: Tiffany Timbers @tiffany
TA: Bo Chang @bchang

Schedule

Lecture Date Day Topic
1 2016-11-16 Wed Introduction to visualization, Data and tasks, Marks and channels
2 2016-11-21 Mon Visualization design exercise
3 2016-11-23 Wed Table data part 1
4 2016-11-28 Mon Table data part 2
5 2016-11-30 Wed Spatial data
6 2016-12-05 Mon Colours
7 2016-12-07 Wed Network data
8 2016-12-12 Mon Rules of thumb

Time: 11:00am-12:20pm

Labs

Assignment Lab topic Due Date Material
1 html, 1 md User testing for Visualizations 2016-11-23 09:00 tutorial html, tutorial md
2 html, 2 md Visualizing tabular data using Python's matplotlib and pandas 2016-12-01 09:00 tutorial html, tutorial Rmd
3 html, 3 md Exploring colour and visualizing spatial data in R with ggplot2's geom_polygon and ggmap 2016-12-08 09:00
4 html, 4 md Visualizing network data in R 2016-12-13* 09:00
* note that this is a Tuesday!

Quizzes

Time Date Location
1 html, 1 ipynb 14:00 - 14:30 2016-12-01 ESB 1042
2 html, 2 ipynb 15:00 - 15:30 2016-12-14 ESB 1042

Solutions

Prerequisites

  • DSCI 511 (Programming for Data Science)
  • DSCI 521 (Computing Platforms for Data Science)

Reference Material

Learning Outcomes

By the end of the course, students are expected to be able to:

  1. Analyze existing static visual encodings in terms of marks and channels, spatial arrangement, and color broken down into luminance, saturation, and hue.
  2. Design new static visual encodings that use space and color channels appropriately according to principles of perceptual effectiveness and by matching channel type to attribute type for quantitative versus categorical attributes.
  3. Implement static visual encodings using existing toolkits and libraries.
  4. Describe and manipulate table, network, and spatial data; transform data into a form suitable for the intended abstract task of the visualization user.
  5. Explain whether a visual encoding is perceptually appropriate for a specific combination of task and data.

Lecture Learning Objectives

  1. Introduction to visualization, Data and task abstractions, Marks and channels

    By the end of the lecture, students are expected to be able to:

    • Discuss situations where visualization is appropriate versus inappropriate.
    • Choose appropriate methods of validation for each of the four levels of visualization in the nested model.
    • Analyze visual encodings by breaking them down according marks and channels used, including whether the combination of channels is integral or separable.
    • Apply the principles of expressiveness and effectiveness to choose appropriate visual channels for specific data types.
    • Distinguish between contexts where visual popout will occur versus those where serial search must be used to find specific items.
  2. Visualization design exercise

By the end of the lecture, students are expected to be able to:

  • Generate multiple design proposals for a given data-task abstraction combination.
  • Analyze the suitability of a given design in terms of both data and task abstractions.
  1. Table data part 1

By the end of the lecture, students are expected to be able to:

  • Analyze spatial arrangements of table data according to key and value variables.
  • Analyze the scalability of simple visual encodings of table data.
  1. Table data part 2

    By the end of the lecture, students are expected to be able to:

    • Analyze visual encodings in terms of rectilinear, radial, and parallel axes and discuss their strengths and weaknesses.
    • Analyze the scalability of complex visual encodings of table data.
  2. Spatial data

    By the end of the lecture, students are expected to be able to:

    • Discuss the similarities and differences between choropleth maps and heatmaps.
    • Choose appropriate normalization for population maps by deriving new attributes.
    • Explain the differences between isosurfaces and direct volume rendering.
    • Present three strategies for visually encoding vector field and discuss their similarities and differences.
  3. Colour

    By the end of the lecture, students are expected to be able to:

    • Explain the discriminability limits on the use of categorical colors and discuss appropriate alternative designs.
    • Explain the appropriate use of the color channels of hue, saturation, and luminance according to attribute types.
    • Explain the drawbacks of rainbow colormaps for ordered data and discuss appropriate alternative designs.
  4. Network data

    By the end of the lecture, students are expected to be able to:

    • Explain which combinations of data and tasks are appropriate for node-link versus adjacency matrix representations of networks.
    • Explain the strengths and weaknesses of containment versus connection for showing network structure.
    • Analyze the scalability of force-directed placement and discuss appropriate alternatives.
  5. Rules of Thumb

    By the end of the lecture, students are expected to be able to:

    • Discuss the costs and benefits of 3D visual representations for both spatial and nonspatial data
    • Discuss the costs and benefits of 2D visual representations of network data.
    • Apply basic graphic design principles about spatial layout.
    • Discuss the tradeoffs between resolution and immersion.