This course is an introduction to the fundamentals of data visualization, interactive data exploration and storytelling. The second part of the course deals with basic algorithms and data structures from computational geometry which are useful for data visualization.

The course will provide an overview of available software and programming languages for data visualization.


Common requirements for the semester and some knowledge of algorithmic complexity


On completion of the course, students will:  

  • understand and use the fundamentals of visualization techniques for data science;
  • know the basic geometric data structures that are useful in data visualization;
  • employ basic geometrical algorithms and understand their complexities;
  • be familiar with the use of current visualization software for basic geometrical display.

This course is intended for 14 weeks.

1. Fundamentals of data visualization (5 weeks)

  1. Principles of data visualization, examples of good and bad data visualizations  
  2. Introduction to human perception of 2d and 3d images
  3. Fundamentals of 2d and 3d computer graphics for visualization: computer graphics pipeline, 2d and 3d image generation
  4. Types of data and their visualizations

2. Computational Geometry for data visualization (6 weeks)

  1. Introduction to algorithms with geometrical structures: examples, complexity, basic constant operations
  2. Voronoi diagrams
  3. Polygon triangulation, delaunay triangulation
  4. Orthogonal range search

3. Working with data (3 weeks)

  1. Visualization examples


  1. Tufte, Edward R. (2001). The Visual Display of Quantitative Information, 2nd Edition, Graphics Press.
  2. Tufte, Edward R. (1990). Envisioning Information, Graphics Press.
  3. Munzner, Tamara (2014). Visualization Analysis & Design, CRC Press.
  4. Ware, Colin (2012). Information Visualization: Perception for Design, Morgan Kaufmann.  
  5. De Berg, Mark; Cheong, Otfried; Van Kreveld, Marc; Overmars, Mark (2008). Computational Geometry, Algorithms and Applications, Springer.
  6. Boissonnat, Jean-Daniel; Chazal, Frédéric; Yvinec, Mariette (2016). Computational Geometry and Topology for Data Analysis.
  7. Devadoss, Satyan L.; O’Rourke, Joseph (2011). Discrete and Computational Geometry, Princeton University Press.

Support Sessions

 2 hours a week with a teaching assistant.


Midterm exam (20%), homework assignments (40%), final exam (20%), integrative project (20%).