Students are evaluated based on the results of individual/group projects, and to a lesser extent on their achievements during lab sessions (petites classes).
Based on the individual/group project, I evaluate:
- the theoretical knowledge and visualization design skills that students will have acquired during the course;
- the technical skills that students will have acquired during lab sessions (petites classes) developing programmaticaly-generated visualizations using D3, Vega-Lite or similar visualization libraries.
1. Project Milestones
Projects start early during P1 (right after the first session), with the following milestones:
- M1: by session 03, identify a dataset (or collection thereof) that you are interested in visualizing (based on your own interests), and validate it with me (just a sanity check to confirm feasibility); you can use the catalogs and search engines referenced on slide 9 of the course slide deck (CSC_51052-2025-course-s01.pdf) to search for data, or use any other means; upload this description on Moodle using the Individual Project M1 assignment.
- M2: have at least one discussion with me during a flipped classroom session, about what your project is about and what you plan to achieve;
- M3: submit a short report along with a runnable demo (ZIP file or Web link), or a video, or screenshots of your project. An assignment will be created for this on Moodle, with a hard deadline on December 18th, 2025.
2. Choosing Dataset(s)
Milestone 1 comes early (mid october) to ensure that the dataset or collections datasets you choose for your project feature sufficient richness to enable you to create meaningful visualizations. One important thing to consider is that the number and variety of dimensions matters more than the number of rows/items in the dataset. The data having a variety of attributes -- mixing nominal, ordered, quantitative, geospatial, temporal data -- will provide more opportunities to design interesting visualizations than, say, a table with millions of rows but only three or four homogeneous quantitative data columns. Those can be challenging to visualize as well, but you will likely have less opportunities to demonstrate the skills you have acquired during this course. Datasets structured as graphs or trees also yield great opportunities. Datasets featuring uncertainty in the data as well (we cover the visualization of uncertainty in Session 4).
3. Expectations and Evaluation Criteria
The individual/group project is both about the design and the implementation of visualizations. You are expected to write code to create it. D3 and Vega-Lite are obvious candidates but you can use other libraries of your chosing as well, such as ggplot2, matplotlib, etc.
You can work alone, in pairs, possibly larger groups, up to three students. Obviously, my expectations about a project are a direct function of how many students are involved.
The following criteria are considered when evaluating your project:
- In the project report: a design rationale for the visualizations you have created, grounded in what we have seen in the course (both live lectures and videos).
- In the project overall, and related to the above: fatal design mistakes (ignoring what we have seen in the course) are obviously to be avoided. Examples: ill-defined mappings between data attributes and visual encoding channels; immoderate and innapropriate use of rainbow color scales or pie charts, etc. In that respect it is important to have followed all course sessions. This obviously includes watching the videos for sessions organized as flipped classrooms.
- How elaborate are the visualizations from a design perspective. Is there enough richness and variety in the visualizations produced. Can interesting insights be gained about the data from those visualizations? Selected projects from previous years (linked below) are here to give you a sense of what I consider to be a good project.
- Beyond regular statistical charts and maps, more advanced representations that, for instance, convey information about uncertainty in the data (covered essentially in Session 4).
- How elaborate are the visualizations from a software development perspective: data preprocessing; effort spent developping the visualizations themselves; adding interactive functionalities to the visualizations.
- Overall report quality, including supplemental material, if any (runnable demo, video, ...)
A given project is not necessarily expected to rank high on all these criteria. Some projects will put more
emphasis on the design aspect and insights gained by visualizing the data, others will rather be focusing on the
technical realization.
Sample individual projects from previous years are available: 1-2, 3-4, and 5-6.
3. Report Submission
The text of the report is expected to be approximately 4-5 pages long for students working alone, with an additional 2-to-3 pages per groupmate (meaning, 6-to-8 pages for students working in pairs, 8-to-11 pages for students working in triads). Illustrations are not considered in this page count, since page length will vary depending on how many illustrations you include. Elements expected in the report:
- A description of your dataset and purpose of the visualization(s) that you have made.
- A description of the design of your visualization and its features (interaction). It is very important to provide a rationale for the main design choices that you make as the visualization designer: why you chose to use such visual encoding channel to represent such and such dimension in the dataset, or why a given visualization technique in particular is more appropriate than other options.
- A technical description of how the visualization(s) were developed.
- Illustrations of your work.
Upload your assignment on Moodle by 2025-12-18.
Back to main course page