COMP 4304: Data Visualization

This course is required for Data-centric Computing Stream, and is an elective for the Visual Computing and Games Stream.

Prerequisites:  COMP 2001 or the former COMP 2710, COMP 2002 or the former COMP 2711, one of COMP 3200, COMP 3400 or COMP 3401, and one of Statistics 2500 or Statistics 2550

Availability: This course is usually offered once per year, in Fall or Winter.

Course Objectives

Data visualization is the art of creating images based on data. Visualizations enable users to efficiently explore, understand, and extract insights from data. This course is centred on data visualization for data science, and covers three broad topics. The first topic covers the tools of data visualization, including the use of visualization libraries within an interactive computing environment. The second topic covers standard types of visualizations for different types of data. The third topic covers the theoretical aspects of data visualization, such as viewer perception and best practices for good visualizations.

Representative Workload
  • Assignments (8) 50%
  • Course Project 50%
Representative Course Outline
  • Data Visualization Tools
    • Jupyter Notebooks and Python
    • Pandas data library
    • Matplotlib, Seaborn and Plotly visualization libraries
    • Vector graphics (svg), Rasterization
    • Interactivity, ipywidgets
  • Standard Visualisation Types
    • Relational: Line plots, Scatter plots, Heat maps, Contour plots, Kernel density estimation
    • Categorical: Bar plots, Pie charts
    • Distributions: Histograms, Box plots, Violin plots
    • Hierarchical: Venn diagrams, Tree maps, Sunburst charts
    • Radial: Radar plots, Polar plots
    • Connections: Sankey diagrams, Chord diagrams
    • Spatial: Choropleth map, Isarithmic map
    • Data reduction: t-SNE, Principal component analysis
  • Data Visualisation Theory
    • Frame, focus and angle
    • Planning and design process
    • Human perception
    • Colour theory
    • Elements of style
    • Best practices, pitfalls to avoid
  • Credit cannot be obtained for both Computer Science 4304 and the former Computer Science 4767.